2012-04-10 9 views
1

NSTimer経由でセレクタにパラメータを送信する方法はありますか?iOSがNSTimersを使用してセレクタにパラメータを送信する

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]; 

動作しませんので、私は求めています、これを行う方法はありますか?

あなたはそのための userInfoパラメータを使用することができます

答えて

10

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

をしかし、あなたは次のようにremoveTheNoteを変更する必要があります:

- (void)removeTheNote:(NSTimer *)timer 
{ 
    NSString *note = timer.userInfo; 
    NSLog(@"%@", note); 
} 
+1

あなたの答えが正しいですが、なぜあなたはnstimerパラメータを使用する必要がありますセレクターの? – Adela

関連する問題