Sprite kit 在精灵工具包场景编辑器中创建的精灵如何接收触摸事件
如果使用“SKSpriteNode()”创建“sprite”,我想我们可以重写“touchesbeent”函数来接收其触摸事件。但是,当使用Sprite工具包场景编辑器时,我们如何做到这一点? 以下是用作“自定义类”的类:Sprite kit 在精灵工具包场景编辑器中创建的精灵如何接收触摸事件,sprite-kit,Sprite Kit,如果使用“SKSpriteNode()”创建“sprite”,我想我们可以重写“touchesbeent”函数来接收其触摸事件。但是,当使用Sprite工具包场景编辑器时,我们如何做到这一点? 以下是用作“自定义类”的类: 类卡:SKSpriteNode { 必需的初始化?(编码器aDecoder:NSCoder){ super.init(编码者:aDecoder) //要检查它是否工作: 打印(“是的,所有工作”) } 覆盖功能触摸开始(触摸:设置,withEvent事件:UIEvent?){
类卡:SKSpriteNode
{
必需的初始化?(编码器aDecoder:NSCoder){
super.init(编码者:aDecoder)
//要检查它是否工作:
打印(“是的,所有工作”)
}
覆盖功能触摸开始(触摸:设置,withEvent事件:UIEvent?){
打印(“卡:触摸事件”)
}
}
Xcode 7支持自定义类。感谢回复。“自定义类”准备好了吗?下载了Xcode7,但它不起作用:(看一看,谢谢。通过你发布的链接,我的类卡的“init”被调用。但是“touchesBegind”仍然没有成功):(@Waterstar你是否将userInteractionEnabled属性设置为true?
class Card : SKSpriteNode
{
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
// To check it worked:
print("Yup, all working")
}
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
print("Card : touch event")
}
}