ios - 类型 'GKEntity' 的值没有成员 'componentForClass' 。为什么我在 swift 3.0 中找不到这个方法?

标签 ios swift sprite-kit swift3 gameplay-kit

我正在尝试运行这一行:

guard let spriteComponent = entity?.componentForClass(SpriteComponent.self) else {
   return
}

并收到这个:

Value of type 'GKEntity' has no member 'componentForClass'

显然苹果已经从 GamePlayKit GkEntity 类中删除了这个方法。那么我应该改用哪种方法呢?

最佳答案

在 Swift 3 中,这已更改为 component(ofType:) .所以你的表情会是这样的;

guard let spriteComponent = entity?.component(ofType: SpriteComponent.self) else {
   return
}

关于ios - 类型 'GKEntity' 的值没有成员 'componentForClass' 。为什么我在 swift 3.0 中找不到这个方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39823718/

相关文章:

iphone - 如何访问secureTextEntry以便进一步使用?

ios - 如何将颜色保存到 Realm 并在其他 View Controller 中显示颜色?

ios - 纹理图集不起作用

swift - LLDB 'thread return' 命令在 Swift 函数中发出错误

swift:检测哪个 skaction 在组中停止

swift - 扩展 SkShapeNode 以获取 n x m 矩阵中的矩形位置

ios - NSTimer 内存泄漏(CFArray?)

ios - 从抽屉 Controller 退出左 View Controller

swift - 导航到其他页面时发出 SIGABRT 信号

ios - 观看连接无法正常工作