我在安排方法时遇到错误。 (根据你的分数显示你得到多少颗星。我有addStar0 addStar1 addStar2 addStar3方法)
[self schedule:@selector(addStar0) interval:0.2f];
,方法是:
-(void) addstar0 {
[self unschedule:_cmd];
if (star > starProgress) {
starProgress++;
[self schedule:@selector(addStar1) interval:0.5f];
}
else {
[self schedule:@selector(displayResult) interval:0.5f];
}
}
错误消息:
Signature not found for selector - does it have the following form? -(void) name: (ccTime) dt
我尝试将所有方法更改为addStar1:(ccTime)delta和schedule:@selector(addStar :) interval:0.2f,但仍然相同。 (实际上我已经使用两种方式来安排(有/没有参数),并且它们在我上一个项目中都运行良好。)
另外,有一个奇怪的事情:有时候我不能使用[自我安排:某事],但[CCScheduler sharedScheduler]安排:某事可行。我想这可能是项目设置左右?
请用代码回答。谢谢。
答案 0 :(得分:3)
您正在使用'addStar0'作为选择器
[self schedule:@selector(addStar0) interval:0.2f];
然后
-(void) addstar0 {
应该是
-(void) addStar0 {
答案 1 :(得分:0)
我认为您的错误实际上是[self unschedule:_cmd];
_cmd在哪里定义?尝试注释掉该行并再次运行它。
答案 2 :(得分:0)
将[self unschedule:_cmd];
放在else语句