コンテンツへスキップ →

経過時間をTIME(HH:mm:ss)形式で表示する

ゲームやユーティリティツールでは、経過時間を表示したい時があります。そんな時はこのコードでかんたんに実現することができます。

まず、スタート時間をNSDate *startDateに記録して下さい。
そして、終了するタイミングで以下を実行します。

time_t startDate2 = (time_t) [startDate timeIntervalSince1970];
    int dt = (int)([[[NSDate alloc] init] timeIntervalSince1970] - startDate2);
    int s = dt % 60;
    int m = (dt - s) / 60 % 60;
    int h = (dt - s - m * 60) / 3600 % 3600;
    if(h>9){//10時間を越えた場合は9:59:59と表示する。
        h = 9;
        m = 59;
        s = 59;
    }
    timelabel.text = [NSString stringWithFormat:@"%02d:%02d:%02d",h,m,s];

timelabelは経過時間を表示するUILabelです。

そうするとこんな感じで(HH:mm:ss)形式で表示できます。

ちなみに、毎分間隔で取得したい場合はNSTimerを使って呼び出せばOKです。

SHARE

無料メルマガ<特典付き>

個人開発・ビジネスについての有益な情報を無料メルマガでお届けします。

特典:個人開発の教科書<心得編>
これまでの個人開発経験を秘伝のタレ的な内容としてエッセンスをまとめました。35ページにわたる大ボリュームです。

個人開発のスキルアップにMENTA

MENTAはいろんなプロに相談できるNo1メンターサービスです。

僕自身もプロダクトの壁打ち・相談にのっています。個人開発でもコードレビュー、セキュリティ面のチェック、デザイン、広告、コンテンツマーケ、SNS集客について相談する、など使えます。

YouTubeでも個人開発ノウハウを発信中!

PROFILE

入江 慎吾
あらゆるスキルが学べるパーソナルメンターサービスMENTAの代表/個人開発が好きでこれまでに30個ほどのWEBサービスやアプリを作ってきました/福岡のWEB制作会社勤務→フリーランスエンジニア→法人立ち上げ→M&A億単位の売却を経験。 (詳しいプロフィール)

カテゴリー: 開発奮闘記