2

我制作了一个游戏,我需要将触摸的 SKSpriteNode 转换为自定义类。它在 iOS 9.1 模拟器上运行良好,但在 iOS 8.4 模拟器中似乎根本无法投射。

在 iOS 9.1 中,我的类是 MyCustomClass 类型,但在 iOS 8.4 中,它是 SKSpriteNode。没有其他任何改变,只有模拟器操作系统。

我在 SpriteKit GameScene 中的 Xcode 中直接设置了自定义类(我单击节点并使用右侧选项卡在“自定义类”部分输入“MyCustomClass”)。我尝试在“Project.MyCustomClass”中添加项目名称,但这没有效果。 我如何在 Spritekit 场景中设置我的自定义类

如果您有解决方案,我很想知道!

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。

4

1 回答 1

0

可悲的是,自定义类(或子类)根本无法在 iOS 8.4 上运行。

我不得不重写我的逻辑。

无论如何,感谢您的帮助。

于 2015-11-18T01:05:55.647 回答