如何使用对象作为Swift类型属性

时间:2014-09-08 16:20:18

标签: ios swift sprite-kit static-members

所以我目前的想法如下:

class MySKScene : SKScene {
    class var background: SKNode {
        return CustomBackgroundNode()
    }

    ...
}

我打算让我的游戏使用这些场景,他们都有共同的背景。我担心的是,在我的代码中每次引用此背景变量时,我都会实例化一个新的自定义背景节点。

我在调试模式下进行了一些调查,发现用于此类变量的内存地址在每次连续引用变量时总是不同(另外,我可能调试错误,我仍然在iOS开发中开始)

是否有其他方法可以获取使用对象的类变量?

1 个答案:

答案 0 :(得分:0)

本质上,您需要单例背景节点,因此请使用:

class MySKScene : SKScene {
    class var background: SKNode {
        struct Static {
            static let node = CustomBackgroundNode()
        }
        return Static.node
    }

    ....
}