作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
这个函数在 curse of all curses(也称为 Swift 3)之前有效。迁移到 Swift 3 之后,我友好可爱的 IDE Xcode 在 SCNTransaction.completionBlock
行显示这个令人沮丧的错误:
Cannot call value of non-function type '(() -> Void)?'
其他几篇文章处理类似的错误,但这些解决方案均不适用。
线路有什么问题???
func test(_ block: SCNNode, animated: Bool) {
// Do stuff
SCNTransaction.begin()
SCNTransaction.animationDuration = animated ? AnimationDur : 0.0
SCNTransaction.completionBlock {
block.removeFromParentNode()
}
// Animate stuff
SCNTransaction.commit()
}
最佳答案
SCNTransaction.completionBlock是一个类属性。也许你是这个意思?
// ↓
SCNTransaction.completionBlock = {
block.removeFromParentNode()
}
关于 swift 3 : Cannot call value of non-function type '(() -> Void)?' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39629801/
我是一名优秀的程序员,十分优秀!