是否可以在单个CCNode对象上安排多个选择器或更新回调

时间:2013-07-04 21:20:46

标签: iphone ios objective-c cocos2d-iphone

我正在使用cocos2d 2.0

在我的图层类中,我正在安排一个方法

[self schedule:@selector(myMethod:) ];

然后在同一层我安排另一个这样的方法

[[self scheduler]scheduleSelector:@selector(mySecondMethod) forTarget:self interval:enemySpawnSpeed paused:NO];

当我运行代码时,它会说'CCScheduler。尝试安排一个暂停值不同于目标'

的选择器

当我评论这些行中的任何一行时,我的项目运行正常并且没有错误。是否无法安排具有相同节点的多个选择器?或者我在这里做错了什么?

阅读指南http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:draw_update后我不确定,但我认为我们每个节点只能安排一个选择器

1 个答案:

答案 0 :(得分:0)

当然,这有效:

[self scheduleSelector:@selector(myMethod:)];
[self scheduleSelector:@selector(mySecondMethod:)];

你的mySecondMethod选择器最后没有冒号。你得到的错误与暂停的标志有关,你应该使用self.paused而不是使用NO来确保选择器的暂停状态与目标的状态相同。

另外第二行很奇怪,你是否尝试从课外安排更新?如果是这样,只需向层对象(即scheduleMySecondMethod)发送消息,然后调度选择器。