swift - NSAnimationContext completionHandler 如何与 Swift 语言一起工作

标签 swift

我无法直接将其移植到 NSAnimationContext 的其余部分。

[[NSAnimationContext currentContext] setCompletionHandler:^(void) {
    //doSomething here...
}];

在文档中它说 var completionHandler: (() -> Void)! 它对我来说没有任何意义。 谢谢。

最佳答案

() -> Void 是 Swift 闭包的签名,它不接受任何参数且不返回任何内容。就像使用 ObjC block 一样使用它:

NSAnimationContext.currentContext().completionHandler = {
    // do something here
}

请注意,由于它被声明为一个属性,您应该将其设置为一个属性——ObjC getter/setter 对不会转换为 Swift。

关于swift - NSAnimationContext completionHandler 如何与 Swift 语言一起工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24233045/

相关文章:

swift - 如何将 SKPhysicsBody 应用于贝塞尔曲线?

ios - 检查用户类中是否已创建值 Parse Server Swift

ios - Swift 2 迁移问题

swift - 如何在 SwiftUI 中将属性定义为 Color 或 LinearGradient?

XMLParser 不调用委托(delegate)方法

ios - 常规委托(delegate)和 ProxyDelegate RxSwift

ios - Swift 2 TableView 将图像从网络传递到下一个 Controller

ios - 在现有的 xcode 项目上使用 swift 包管理器

swift - 如何使用 Swift 通过传递 URL 中的参数来上传图片?

Swift OSX - 设置值时无法识别的选择器发送到 NSObject 子类上的实例