忍者ブログ

初心者が進めるiphoneアプリ開発

Macもiphoneすらもよく使ったことのない超初心者がお送りする、iphoneアプリの作り方の解説です。難しいことは抜きにしてとにかく動かしてみましょう。


×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。



タイマーを設定して10ms単位でカウントアップしても、タイマーは正確に10msでメソッドの実行ができないので時間を測定するのには使えません。そこでストップウォッチみたいに細かい時間の取得をするには「NSDate」クラスを使って、起動開始の時間と停止の時間との差分を求める方法があります。

ヘッダでタイマ、タイマスタート時間、タイムアウトで実行するメソッドを宣言します。

@interface TestViewController : UIViewController {
    NSTimer *timer1;    //タイマ
    NSDate *stdate;    //タイマスタートの時間
}

- (void)timedisplay:(NSTimer *)timer;    //タイムアウトで時間表示するメソッド

@end


タイマーを起動する際に、タイマーのスタート時間を取得しておきます。

//タイマー動作開始、0.01秒きざみに設定
timer1 =
[NSTimer
scheduledTimerWithTimeInterval:0.01
target:self 
selector:@selector(timedisplay:) 
userInfo:nil 
repeats:YES]; 

//スタート時間の取得
stdate=[NSDate date];
[stdate retain];


タイムアウト時に数値を表示させる処理を入れます。
ここで、「timeIntervalSinceDate」メソッドを利用することで、ある日時からある日時までの経過秒数を取得することが可能です。

- (void)timedisplay:(NSTimer *)timer
{
    NSDate *now=[NSDate date];    //現在の時間を取得
    
    //開始時間と現在時間の差分を、少数点以下2桁で表示
    timedisplay.text=
    [NSString stringWithFormat:@"%.2f",[now timeIntervalSinceDate:stdate]];
}


これでタイマー起動中は少数点以下の数値がそれらしく動き、タイマーを停止すればタイマーを起動した時間から停止した時間までの差分が出ます。タイマーを停止した直後に結果を表示させます。

[timer1 invalidate];
NSDate *now=[NSDate date];
timedisplay.text=
[NSString stringWithFormat:@"%.2f",[now timeIntervalSinceDate:stdate]];



実行結果


PR
コンテンツ
Macintosh初心者の館
Xcode and iOS SDKのインストール
簡単なアプリ「Hello World」を作成1
簡単なアプリ「Hello World」を作成2
簡単なアプリ「Hello World」を作成3
簡単なアプリ「Hello World」を作成4
デバッグ用にログを取る(NSLog)
文字列を操作する(NSString)
文字列の比較と検索(NSString)
文字列を数値などに変換する(NSString)
アラートの表示(UIAlertView)
配列の生成とautorelease(NSArray)
固定配列へのアクセス(NSArray)
可変な配列の生成と操作(NSMutableArray)
要素とキーを対で持つ配列(NSDictionary)
戻り値の扱い方
タイマー(NSTimer)を使用する1
タイマー(NSTimer)を使用する2
タイマー(NSTimer)を使用する3
時間を取得して計測に使う(NSDate)
iPhoneアプリのファイル操作
Text Fieldの使い方1(UITextField)
Text Fieldの使い方2(UITextField)
Text Fieldの使い方3(UITextField)
TextView(UITextView)の使い方1
PickerViewの使い方(UIPickerView)
テーブル(UITableView)の使い方1
テーブル(UITableView)の使い方2
テーブル(UITableView)の使い方3
ナビゲーションバーの使い方1
ナビゲーションバーの使い方2
ナビゲーションバーにビューを追加する1
ナビゲーションバーにビューを追加する2
ナビゲーションバーにビューを追加する3
XMLファイルを読み込む1
XMLファイルを読み込む2
XMLファイルを読み込む3
にほんブログ村 IT技術ブログ iPhoneアプリ開発へ
スポンサード リンク
忍者ブログ [PR]

Template by decoboko.jp