我读过一本书,当我在场景中有多个图层时,我应该将图层设置为场景的属性,并通过使用场景的单例来获取它们然后调用它的属性。
但我认为我可以使用[[CCDirector sharedDirector]runningScene]
而且我可以获得场景,这样我就可以在不使用单身的情况下访问该属性。这是更好的方法吗?
我也读过Cocos2D概念,它的网站上告诉我,Scene包含了一个层,它给了场景一个行为等等。这意味着我应该设置我的图层,以便他们可以互相交谈,并且可以在不搞乱场景的情况下做他们的事情? (除了改变我应该调用CCDirector的场景)但我认为如果我使用我的场景命令我的图层会更好吗?因为场景具有层的所有引用,所以编程比使层彼此交谈更容易......
谢谢!
答案 0 :(得分:0)
你的问题相当令人困惑。场景可以有很多层。我目前正在开发的游戏中有一个场景(在主游戏期间),有几个层以各种方式执行。如果您需要另一个类来控制图层,那么有多种方法可以做到这一点。
答案 1 :(得分:0)
如果你想从另一个类(也就是同一个场景中的另一个层)访问运行场景中的图层,你可以使用[[CCDirector sharedDirector] runningScene]获取对场景的引用,然后使用getChildByTag:来获取引用到特定的层。
如果要访问同一场景中的图层,最好在图层的onEnter方法中执行这些调用,而不是init方法。