草庐IT

Swift-Mailer

全部标签

swift - 移除子层中的动画

我正在创建一个脉动动画并将其添加为imageView的子层。执行某项操作后,我需要删除动画,但正在努力寻找方法。这是创建图层的时间funcaddPulse(){letpulse=Pulsing(numberOfPulses:Float.infinity,radius:140,position:imageView.center)pulse.animationDuration=0.8pulse.backgroundColor=#colorLiteral(red:0.8549019694,green:0.250980407,blue:0.4784313738,alpha:1)self.vie

swift - SwiftUI 中的计算 (NSObject) 属性不更新 View

所以,我想要一个Text来根据我的CoreData模型的内容更改其内容。为此,我在Xcodebeta4中使用了一个计算属性,但它似乎不再起作用了。这是错误还是存在其他我没有发现的问题?我遇到的问题是,当在我的商店中调用self.objectWillChange.send()时,我的View(和计算属性)似乎没有得到更新。我还尝试将我的var“导出”到商店并从那里获取它,结果相同...编辑:我只是在另一个类上尝试了同样的方法,但它不适用于objectWillChange.send()但仅适用于@Published但是,如果该类继承,即使它停止工作来自NSObject...我刚刚发现:用s

swift - 如果我想从 Codable 中排除一些属性,为什么这些属性必须是可选的?

我有以下结构structChecklist:Codable{letid:Int64vartext:String?varchecked:Boolvarvisible:Boolvarversion:Int64privateenumCodingKeys:String,CodingKey{caseidcasetextcasechecked}}但是,我遇到了编译错误Type'Checklist'doesnotconformtoprotocol'Decodable'我能解决的唯一方法是将排除的属性更改为可选。structChecklist:Codable{letid:Int64vartext:St

swift - Swift 哈希的缓存结果(到 :) Hashable protocol requirement

我有一个类在集合和字典中被大量使用。出于性能原因,此类以旧方式实现Hashable并缓存计算的哈希值:lethashValue:Intinit(...){self.hashValue=...}在Xcode10.2中,我看到一条警告,即hashValue已弃用,很快将不再是协议(protocol)要求。令我困扰的是无论如何都无法缓存计算出的散列,因为hash(into:)不返回任何内容。funchash(intohasher:inoutHasher){hasher.combine(...)}在Playground中考虑以下示例classClass:Hashable{letparam:In

ios - Swift-NIO 安全的 websocket 服务器

我正在尝试在我的iOS应用程序中创建websocket服务器和客户端,我在此处示例实现的帮助下成功地做到了这一点。(https://github.com/apple/swift-nio/tree/master/Sources/NIOWebSocketServer)-所以目前的工作情况是,我在应用程序启动时运行websocket服务器,然后我将客户端加载到可以连接到它的webview中。现在我的问题是我希望我的服务器能够保护websocket服务器(基本上从HTTPShtml页面连接到websocket服务器)我是网络编程的新手,至少可以说缺乏Swift-nio文档。据我所知,我可以使用

swift - `func<T: Type>` 和 `func<T>(..) where T: Type` 之间的区别?

在限制泛型参数的类型时,为什么Swift中有两种方法可以做到这一点?funcfunc(..)whereT:Type这两者之间有区别还是只是留下的遗留语法? 最佳答案 没有区别,我不知道有什么约定。就我个人而言,更喜欢第一个选项,除非它使该行的其余部分必须换行,在这种情况下我会改用第二个选项。 关于swift-`func`和`func(..)whereT:Type`之间的区别?,我们在StackOverflow上找到一个类似的问题: https://stacko

swift - 在 SwiftUI 中使用获取 View 的宽度

我需要在SwiftUI中获取渲染View的宽度,这显然不是那么容易。我的看法是我需要一个返回View维度的函数,就这么简单。varbody:someView{VStack(alignment:.leading){Text(timer.name).font(.largeTitle).fontWeight(.heavy)Text(timer.time).font(.largeTitle).fontWeight(.heavy).opacity(0.5)}} 最佳答案 获取View尺寸的唯一方法是使用GeometryReader。读取器返回

ios - swift/正则表达式 : How can I format a string using stringByReplacingMatches(withTemplate)?

我想格式化一个数字字符串,例如123456789,所以第一个数字会被分开,然后每两个数字被分组,得到这个结果:123456789我试过这个:letgivenText="123456789"lettext=(try?NSRegularExpression(pattern:"([0-9])([0-9])(?!$)",options:.caseInsensitive))?.stringByReplacingMatches(in:givenText,options:.reportProgress,range:NSMakeRange(0,givenText.count),withTemplate

swift - 在 Swift 中,我们需要初始化惰性存储属性吗?

在Apple的新Swift编程语言中,我遇到了以下情况:“类和结构必须在创建该类或结构的实例时将其所有存储属性设置为适当的初始值。存储属性不能处于不确定状态。”上述规则是否对@lazy存储属性有效? 最佳答案 不,你没有:Alazystoredpropertyisapropertywhoseinitialvalueisnotcalculateduntilthefirsttimeitisused...Youmustalwaysdeclarealazypropertyasavariable(withthevarkeyword),beca

swift - 是否可以快速使用多个尾随闭包?

我知道可以像这样定义接受闭包的方法:一个。单闭包作为输入参数functestOfClosures(flag:Int,closure1:()->()){closure1()}B.多个闭包作为输入参数functestOfClosures(flag:Int,closure1:()->(),closure2:()->(),closure3:()->()){switchflag{case1:closure1()case2:closure2()default:closure3()}}有趣的是,在第一种情况下我们可以这样调用它:testOfClosures(1){println("printclos