简单地说,在我开始新的游戏关卡之前,我会显示倒计时(使用 CCLabelTTF、Cocos2D)。
我有这个代码:
centerLevelLabel.string=@"New level";
centerLevelLabel.visible=true;
[centerLevelLabel runAction:[CCFadeOut actionWithDuration:1]];
while (centerLevelLabel.numberOfRunningActions>0) {
}
centerLevelLabel.string=@"3";
while (centerLevelLabel.numberOfRunningActions>0) {
}
centerLevelLabel.string=@"2";
while (centerLevelLabel.numberOfRunningActions>0) {
}
centerLevelLabel.string=@"1";
while (centerLevelLabel.numberOfRunningActions>0) {
}
//下面的一些代码
我想显示这个标签,然后我需要继续下面的代码。问题是,UI 被冻结并且在第一个 while 块运行无限循环。但我不知道为什么,因为当运行动作完成时,numberOfRunningActions 为零。
还有其他方法吗,我怎么能等待运行动作结束然后继续?
谢谢