Objective-C Language                
            NSTimer
        
        
            
    サーチ…
タイマーの作成
これは、 5.0秒でselfのdoSomethingメソッドを呼び出すタイマーを作成します。 
[NSTimer scheduledTimerWithTimeInterval:5.0
         target:self 
         selector:@selector(doSomething) 
         userInfo:nil 
         repeats:NO];
 repeatsパラメータをfalse/NO設定すると、タイマーを1回だけ起動させます。これをtrue/YESに設定すると、手動で無効にされるまで5秒ごとに起動します。 
タイマーの無効化
[timer invalidate];
timer = nil;
これにより、タイマーが起動しなくなります。 タイマーが作成されたスレッドから呼び出される必要があります。 アップルのメモを参照してください:
このメッセージは、タイマーがインストールされたスレッドから送信する必要があります。別のスレッドからこのメッセージを送信すると、タイマーに関連付けられた入力ソースが実行ループから削除されないことがあり、スレッドが正しく終了しない可能性があります。
 nilを設定すると、次に実行するかどうかを確認するのに役立ちます。 
if(timer) {
    [timer invalidate];
    timer = nil;
}
//Now set a timer again.
手動でタイマーを起動する
[timer fire];
 fireメソッドを呼び出すと、NSTimerは通常スケジュールで実行していたタスクを実行します。 
 非繰り返しタイマーでは、タイマーが自動的に無効になります。これは、呼び出し、あるfire時間間隔が一つだけの呼び出しになりますアップする前に。 
反復タイマーでは、通常のスケジュールを中断することなくアクションを呼び出すだけです。
タイマーに情報を保存する
タイマーを作成するときに、 userInfoパラメーターを設定して、タイマーで呼び出す関数に渡す情報を含めることができます。 
この関数でタイマーをパラメータとして取ることで、 userInfoプロパティにアクセスできます。 
NSDictionary *dictionary = @{
                             @"Message" : @"Hello, world!"
                            }; //this dictionary contains a message
[NSTimer scheduledTimerWithTimeInterval:5.0
     target:self 
     selector:@selector(doSomething) 
     userInfo:dictionary
     repeats:NO]; //the timer contains the dictionary and later calls the function
...
- (void) doSomething:(NSTimer*)timer{
    //the function retrieves the message from the timer
    NSLog("%@", timer.userInfo["Message"]);
}
Modified text is an extract of the original Stack Overflow Documentation
        ライセンスを受けた CC BY-SA 3.0
        所属していない Stack Overflow