1

NSTimerを介してセレクターにパラメーターを送信する方法はありますか?

myTimer =[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(removeTheNote:) userInfo:nil repeats:NO];

      - (void)removeTheNote:(NSString*)note
    {
        NSLog(@"Note %@ ----------- REMOVED!",note);
    }

私はそれを使用していることを知っています:

myTimer =[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(removeTheNote:myNote) userInfo:nil repeats:NO];

動作しないので、私は尋ねています、これを行う方法はありますか?

4

1 に答える 1

10

userInfoそのためのパラメータを使用できます。

myTimer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(removeTheNote:) userInfo:myNote repeats:NO];

removeTheNoteただし、次のように変更する必要があります。

- (void)removeTheNote:(NSTimer *)timer
{
    NSString *note = timer.userInfo;
    NSLog(@"%@", note);
} 
于 2012-04-10T09:39:07.970 に答える