簡単に言えば、ゲームの新しいレベルを開始する前に、カウントダウンを表示します (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) {
}
//以下のコード
thist ラベルを表示したいので、次のコードを続行する必要があります。問題は、ブロックが無限ループを実行している間、最初に UI がフリーズすることです。しかし、実行中のアクションが終了すると numberOfRunningActions がゼロになるため、その理由はわかりません。
実行中のアクションの終了を待ってから続行するにはどうすればよいですか?
ありがとうございました