来自UIView的指向CCLayer的指针

时间:2012-04-02 09:31:58

标签: cocos2d-iphone

我有一个小应用程序,同时具有CCLayer视图和UIView。这很好。我只是尝试向该层的引用发送消息,以便Cocos2d CCLayer可以接收该消息。这似乎很简单,我认为应该有效。我创建了一个名为“cocos”的CCLayer指针作为iVar,并在创建cocos视图后将其设置为:

[[CCDirector sharedDirector] runWithScene: [HelloWorldLayer scene]];

CCScene*tempscene=[[CCDirector sharedDirector] runningScene];
cocos=[tempscene.children objectAtIndex:0];

由于这是一个只有一个场景和图层的简单小测试应用程序,它应该可以工作。但是iVar cocos没有响应HelloWorldLayer中的任何公共方法。知道为什么吗?

更新:我通过简单地重新安排代码来实现它。不确定为什么它以这种方式工作而不是先前的方式:

  CCScene*tempscene=[HelloWorldLayer scene];
[[CCDirector sharedDirector] runWithScene: tempscene];


cocos=[tempscene.children objectAtIndex:0];

1 个答案:

答案 0 :(得分:0)

第一段代码不适合你的原因是runWithScene:没有立即将runningScene的{​​{1}}属性设置为CCDirector。< / p>