1

私はこのコードを持っています:

NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:temp/10.0f
                                 target:self
                               selector:@selector(verify)
                               userInfo:nil
                                repeats:YES];


CCMoveTo *moveTo = [CCMoveTo actionWithDuration:temp position:positionX];
id doneAction = [CCCallFuncN actionWithTarget:timer selector:@selector(invalidate)];
id sequence = [CCSequence actions: moveTo, doneAction, nil];
[self.container runAction:sequence];  

問題は、タイマーが無効にならず、アニメーションが終了した後も実行し続けることです。

私は何が欠けていますか?

ありがとう。

4

1 に答える 1

2

に変更CCCallFuncNしますCCCallFunc

id doneAction = [CCCallFunc actionWithTarget:timer selector:@selector(invalidate)];

CCCallFuncN は、 を使用して関数に渡すオブジェクトを探しますwithObject:。これは必要ありません。

于 2012-06-27T15:26:25.640 に答える