0

私は次の2つのステートメントを持っていますが、私が理解している限り、本質的にまったく同じことを行う必要があります。

//[NSTimer timerWithTimeInterval:2.0 target:self selector:@selector(hideSuccessImageFromAllScreen:) userInfo:nil repeats:NO];
[self performSelector:@selector(hideSuccessImageFromAllScreen:) withObject:nil afterDelay:2.0];

に続く

-(void)hideSuccessImageFromAllScreen:(NSTimer *)timer{...

セレクターの実行メソッドは正常に実行され、セレクターが実行されます。ただし、最初の行のコメントを解除し、2番目の行をコメントアウトすると、セレクターは起動しません。私は何が間違っているのですか?タイマーを手動で開始する必要がありますか?

ありがとう!

4

1 に答える 1

6

タイマーを手動で開始するか、+[NSTimer scheduledTimerWithTimeInterval:target:selector:userInfo:repeats:]自動的に開始する を使用する必要があります。

[NSTimer scheduledTimerWithTimeInterval:2.0
                                 target:self
                              selector:@selector(hideSuccessImageFromAllScreen:)
                              userInfo:nil
                               repeats:NO];
于 2012-09-29T19:45:14.407 に答える