2

私は何日もスタックオーバーフローを見回してきましたが、私の問題に対する答えは見当たりませんでした。メインのゲームシーンには、によって呼び出されるいくつかのメソッドがあります

[self performSelector:@selector(MethodName) withObject:nil afterDelay:.1];

ゲームを終了して戻ってくると、すべてのメソッドが一度に実行されているように見えます。これは、遅延時間がバックグラウンドで計算されているためだと思いますが、cocos2dでこれを修正する方法がわかりません。cocos2dの一時停止/再開機能でNSTimersを扱う必要はないと思いましたか?ここで不足している簡単な情報は何ですか?

4

2 に答える 2

1

cocos-2d スケジューラーを使用して、この問題を解決できます。以下のコードを参照してください。

 [className schedule: @selector(selectorName) interval:2];

を使用してゲームを一時停止すると、 [[CCDirector sharedDirector] pause];このタイマーが一時停止します。を使用してゲームを再開すると、[[CCDirector sharedDirector] resume];それも再開されます。

于 2012-06-14T03:01:51.603 に答える