Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 子类SKLabelNode如何呈现场景?_Swift_Sprite Kit_Skscene_Touchesbegan_Skview - Fatal编程技术网

Swift 子类SKLabelNode如何呈现场景?

Swift 子类SKLabelNode如何呈现场景?,swift,sprite-kit,skscene,touchesbegan,skview,Swift,Sprite Kit,Skscene,Touchesbegan,Skview,我有一个SKLabelNode的子类,它实例化了三到四次,每次都有一个名称和一个目的地: // import SpriteKit class MenuButton: SKLabelNode { var goesTo = SKScene() override init() { super.init() print("test... did this get called? WTF? HOW/WHY/WHERE?") } co

我有一个SKLabelNode的子类,它实例化了三到四次,每次都有一个名称和一个目的地:

//

import SpriteKit

class MenuButton: SKLabelNode {

    var goesTo = SKScene()

    override init() {
        super.init()
        print("test... did this get called? WTF? HOW/WHY/WHERE?")
    }

    convenience init(text: String, color: SKColor, destination: SKScene){
        self.init()
        self.text = text
        self.color = color

        goesTo = destination
    }

    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        let nextScene = goesTo
       // .....?????????????????
       // HOW DO I GET THIS TO FIND ITS SCENE...
       // THEN ITS VIEW, THEN PRESENT this nextScene????

    }

    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }

}
//
进口SpriteKit
类菜单按钮:SKLabelNode{
var goesTo=SKScene()
重写init(){
super.init()
打印(“测试…这被称为?WTF?如何/为什么/在哪里?”)
}
便利初始化(文本:字符串,颜色:SKColor,目的地:SKScene){
self.init()
self.text=文本
self.color=颜色
goesTo=目的地
}
覆盖func TouchesBegind(Touchs:Set,带有事件:UIEvent?){
让nextScene=goesTo
// .....?????????????????
//我怎样才能找到它的场景。。。
//然后它的观点,然后呈现这个下一个基因????
}
必需的初始化?(编码器aDecoder:NSCoder){
fatalError(“初始化(编码者:)尚未实现”)
}
}

我不知道如何获取需要调用场景更改的视图。

每个
SKNode
都有一个
scene
属性,该属性返回节点所在的场景

每个
SKScene
都作为
视图
属性,所以

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    let nextScene = goesTo

    self.scene?.view?.presentScene(nextScene)

}
override func touchsbegind(touch:Set,带有事件:UIEvent?){
让nextScene=goesTo
self.scene?.view?.presentScene(nextScene)
}

谢谢!!!比我解决这个问题的方法要好得多;)<代码>让myPointlessView=SKView()myPointlessView.presentScene(nextScene)