NSTimer (タイマー)の使用方法 iPhone ios 逆引き サンプル
userInfo タイマーのイベントが発生した時に呼び出されるメソッド内で利用するデータを作成する。
NSDictionary *userInfo =[NSDictionary dictionaryWithObjectsAndKeys:
@”my value is 1″,@”key1″,
@”my value is 2″,@”key2″,
@”my value is 3″,@”key3″,
nil
];
自動でタイマーはスタートします。
NSTimer *timer = [NSTimer
タイマーイベントを発生させる感覚。「1.5」は 1.5秒 型は float
scheduledTimerWithTimeInterval:1.5
呼び出すメソッドの呼び出し先(selector) self はこのファイル(.m)
target:self
呼び出すメソッド名。「:」で自分自身(タイマーインスタンス)を渡す。
インスタンスを渡さない場合は、「timerInfo」
selector:@selector(timerInfo:)
呼び出すメソッド内で利用するデータが存在する場合は設定する。ない場合は「nil」
userInfo:userInfo
上記で設定した秒ごとにメソッドを呼び出す場合は、「YES」呼び出さない場合は「NO」
repeats:NO
];
タイマーの状態を取得する方法、「0」: 停止中 「1」: 動作中
[timer isValid];
NSLog(@”Timer Status : %d”,[timer isValid]);
タイマーを停止したい場合
[timer invalidate];
NSLog(@”Timer Status : %d”,[timer isValid]);
タイマーを開始、再開する場合
[timer fire];
NSLog(@”Timer Status : %d”,[timer isValid]);
呼び出しメソッド
-(void) timerInfo:(NSTimer *)timer
{
NSLog(@”key1 : %@”,[[timer userInfo] objectForKey:@”key1″]);
NSLog(@”key2 : %@”,[[timer userInfo] objectForKey:@”key2″]);
NSLog(@”key3 : %@”,[[timer userInfo] objectForKey:@”key3″]);
}
コードサンプル
- (void)viewDidLoad { [super viewDidLoad]; // NSTimer (タイマー)の使用方法 iPhone ios 逆引き サンプル // userInfo タイマーのイベントが発生した時に呼び出されるメソッド内で利用するデータを作成する。 NSDictionary *userInfo =[NSDictionary dictionaryWithObjectsAndKeys: @"my value is 1",@"key1", @"my value is 2",@"key2", @"my value is 3",@"key3", nil ]; // 自動でタイマーはスタートします。 NSTimer *timer = [NSTimer // タイマーイベントを発生させる感覚。「1.5」は 1.5秒 型は float scheduledTimerWithTimeInterval:1.5 // 呼び出すメソッドの呼び出し先(selector) self はこのファイル(.m) target:self // 呼び出すメソッド名。「:」で自分自身(タイマーインスタンス)を渡す。 // インスタンスを渡さない場合は、「timerInfo」 selector:@selector(timerInfo:) // 呼び出すメソッド内で利用するデータが存在する場合は設定する。ない場合は「nil」 userInfo:userInfo // 上記で設定した秒ごとにメソッドを呼び出す場合は、「YES」呼び出さない場合は「NO」 repeats:NO ]; // タイマーの状態を取得する方法、「0」: 停止中 「1」: 動作中 [timer isValid]; NSLog(@"Timer Status : %d",[timer isValid]); // タイマーを停止したい場合 [timer invalidate]; NSLog(@"Timer Status : %d",[timer isValid]); // タイマーを開始、再開する場合 [timer fire]; NSLog(@"Timer Status : %d",[timer isValid]); } -(void) timerInfo:(NSTimer *)timer { NSLog(@"key1 : %@",[[timer userInfo] objectForKey:@"key1"]); NSLog(@"key2 : %@",[[timer userInfo] objectForKey:@"key2"]); NSLog(@"key3 : %@",[[timer userInfo] objectForKey:@"key3"]); }