【Objective-C】iPhoneアプリ:アラーム作成-1

2012/03/24  カテゴリー:アプリ開発    タグ:タグ: ,



ラベルを配置 IBOutlet UILabel *display; と設定 時計の表示 viewDidLoadに、以下のコードを追加します。     //タイマーのセット(一秒) [NSTimer scheduledTimerWithTimeInterval:1.0 //タイマーを発生させる間隔(1秒毎) target:self //メソッドがあるオブジェクト selector […]


ラベルを配置

IBOutlet UILabel *display;

と設定

時計の表示

viewDidLoadに、以下のコードを追加します。

 

 

//タイマーのセット(一秒)
[NSTimer scheduledTimerWithTimeInterval:1.0 //タイマーを発生させる間隔(1秒毎)
target:self //メソッドがあるオブジェクト
selector:@selector(driveClock:) //呼び出すメソッド
userInfo:nil //メソッドに渡すパラメータ
repeats:YES]; //繰り返し

 

 

driveClock という名前で時間を取得するメソッドを作ります。
pclockViewController.hにメソッドの定義をします。

 

– (void)driveClock:(NSTimer *)timer;

 

pclockViewController.m にメソッドを作ります。

 

- (void)driveClock:(NSTimer *)timer
{
NSDate *today = [NSDate date]; //現在時刻を取得

NSCalendar *calender = [NSCalendar currentCalendar]; //現在時刻の時分秒を取得
unsigned flags = NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDateComponents *todayComponents = [calender components:flags fromDate:today];
int hour = [todayComponents hour];
int min = [todayComponents minute];
int sec = [todayComponents second];

display.text = [NSString stringWithFormat:@”%02d:%02d:%02d”,hour,min,sec]; //時間を表示
}

 

NSDateComponentsは、 日時を、年、月、日、時、分、秒などの要素にわけて扱えるので、現在時刻から時分秒をそれぞれ取り出します。
年月日や曜日もここから取り出せます。

 

viewDidLoadに書いた、タイマーでdriveClockが1秒毎に呼び出されるので、1秒毎に時計が更新されます。

 

表示される時間を、「00:00:00」の形にするには、stringWithFormatを使います。
%02dは、int形の値を0埋めして2桁に整形して表示します。

 

後は、表示する文字を大きくしておきます。
displayのラベルのインスペクタで文字のサイズを変更して位置を真ん中に表示するようにします。

Share on Google+Tweet about this on TwitterShare on Facebook