scheduledTimerWithTimeInterval:target:selector:userInfo:repeats:
タイマーを作って返します
+(NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)seconds: target:(id)target: selector:(SEL)aSelector: userInfo:(id)userInfo: repeats:(BOOL)repeats:
解説
タイマーを作って返します。
セレクタはNSTimerを唯一の引数とするメソッドでなければなりません。
タイマーの時間(second)が0.0以下にセットされた場合は最小の正の数のセットされます。
secondsで指定した時間(秒)が過ぎた後、ターゲットに起動のメッセージを送ります。
repeatsをYESにすると、タイマーは繰り返して実行されます。NOをセットすると1回だけメッセージを送ります。
追加の情報を送るのにuserInfoを使います。userInfoには通常NSDictionaryを使います。
ターゲットはNSTimerからuserInfoを取り出します。
返り値
( NSTimer * )
タイマーオブジェクト
引数
( NSTimeInterval )seconds
タイマーが呼び出される間隔(秒)
( id )target
ターゲット
( SEL )aSelector
呼び出すメソッド(NSTimerを唯一の引数とするメソッド)
( id )userInfo
パラメータ
( BOOL )repeats
繰り返すかYES/NO
フレームワーク
Foundation
クラス
NSTimer
Class Methods
使用可能
10.0
参照
例文
#import "MyObject.h" @implementation MyObject NSTimer *timer=nil; - (IBAction)myAction:(id)sender { //userInfoに使う辞書を作成 NSDictionary *userInfoDictionary =[NSDictionary dictionaryWithObjectsAndKeys: @"value1",@"key1", @"value2",@"key2", @"value3",@"key3",nil]; //タイマースタート timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target: self selector: @selector( timerControl: ) userInfo: userInfoDictionary repeats: YES ]; } -(void) timerControl:(NSTimer *)aTimer { NSLog(@"...%@",[[aTimer userInfo] objectForKey:@"key2"]); } @end