-1

重複の可能性:
キューに入れられたperformSelector:afterDelay呼び出しのキャンセル

結果の表示を6秒遅らせるコードがあります。ただし、ユーザーが続行する場合は、この遅延を中止できるようにしたいと思います。開始したdelayメソッド呼び出しをキャンセルする方法がわかりません。誰かが私を正しい方向に向けてくれませんか?

これは、delayメソッドと以下のメソッドを呼び出すために使用するコードです。

[self performSelector:@selector(delay) withObject:nil afterDelay:6.0];

-(void)delay{
    [buttonScreen setFont:[UIFont systemFontOfSize:32.0]];
    buttonScreen.text = [formatter stringFromNumber:[NSNumber numberWithDouble:result]];
}
4

1 に答える 1

3

performSelector:withObject:afterDelay:NSObjectクラスのドキュメントにあります。したがって、行うべきことは、NSObjectクラスのドキュメントを調べて、他に何があるかを確認することです。そうした場合、次のように表示されます。

cancelPreviousPerformRequestsWithTarget:performSelector:withObject:afterDelay: 以前にインスタンスメソッドに登録された実行要求をキャンセルします。

于 2013-01-27T04:07:49.920 に答える