1

メソッドを24回呼び出したいのですが、各呼び出しの間に1秒の間隔が必要で、現在使用しています

[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(loadNumber) userInfo:nil repeats:YES];

呼び出しをカウントする方法ですが、24カウント後にタイマーを無効にしたいのですが、それを無効にすることはできますか。

4

2 に答える 2

1

のインスタンス変数を作成しますint。名前は関係ありません。タイマーを呼び出す前に「0」に設定してください。

someInt = 0;
[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(loadNumber:) userInfo:nil repeats:YES];

時間が呼び出されるアクションでは、この数値の値をチェックして、アクションを実行し、数値をインクリメントする必要があることを確認します。

- (void)loadNumber:(NSTimer *)sender
{
    if (someInt <= 24) {
        //do something
        someInt ++;
    }else{
        [sender invalidate];
        someInt = 0;
    }
}
于 2012-10-30T11:47:09.743 に答える
0

でカウンターを設定する必要があります。これにより、目的の繰り返し回数loadNumberが無効になります。NSTimer

于 2012-10-30T11:37:00.350 に答える