升级到 swift3 时出现错误 'cannot override a property with type GKEntity'

On upgrade to swift3, getting an error 'cannot override a property with type GKEntity'

更新到swift3后,注释行返回错误: 属性 'entity' with type 'GKEntity!' (aka 'ImplicitlyUnwrappedOptional') 不能覆盖 属性 with type 'GKEntity?'

import SpriteKit
import GameplayKit
class EntityNode: SKNode {  
    weak var entity: GKEntity!    // error here
}

升级前运行良好。知道哪里出了问题以及如何解决这个问题吗?

SKNode 已经有一个名为 entity 的 属性,其定义如下:

var entity: GKEntity?

因此您不能用 entity 类型 GKEntity!

覆盖它

因此,您可以将 entity 重命名为其他名称,或者您可以使用已经存在的 entity

您可以阅读更多关于 SKNode here

希望对你有帮助:)