我制作了一个游戏,我需要将触摸的 SKSpriteNode 转换为自定义类。它在 iOS 9.1 模拟器上运行良好,但在 iOS 8.4 模拟器中似乎根本无法投射。
在 iOS 9.1 中,我的类是 MyCustomClass 类型,但在 iOS 8.4 中,它是 SKSpriteNode。没有其他任何改变,只有模拟器操作系统。
我在 SpriteKit GameScene 中的 Xcode 中直接设置了自定义类(我单击节点并使用右侧选项卡在“自定义类”部分输入“MyCustomClass”)。我尝试在“Project.MyCustomClass”中添加项目名称,但这没有效果。
如果您有解决方案,我很想知道!
if self.nodeAtPoint(location).isKindOfClass(MyCustomClass) {
print("Is my class") //This is the result in iOS 9.1
}else if self.nodeAtPoint(location).isKindOfClass(SKSpriteNode){
print("Is an SKSPriteNode") //This is the result in iOS 8.4
}else if self.nodeAtPoint(location).isKindOfClass(SKNode) {
print("Is an SKNode")
}
if let touchedNode = self.nodeAtPoint(location) as? Objet {
//Fails on iOS 8.4 but succeed in iOS 9.1
}
谢谢你的时间。
PS:我使用的是 Xcode 7.1.1。