デジタル時計 Digital Clock


Android の UI にデジタル時計 DigitalClock がある。

レイアウトファイルに下記のように記述する。

<DigitalClock
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"/>

このクラス自体が Java で記述されています。
donut(v1.6) の android.widget.DigitalClock を移植した。
そのままコピーして、ユーザアプリとして、コンパイルを通るようにしたもの。

ソースコードは Google code に置いています。

下記のように、一定周期で現在時刻を読み出している。

mTicker = new Runnable() {
  public void run() {
    if (mTickerStopped) return;
    mCalendar.setTimeInMillis(System.currentTimeMillis());
    setText(DateFormat.format(mFormat, mCalendar));
    invalidate();
    long now = SystemClock.uptimeMillis();
    long next = now + (1000 - now % 1000);
    mHandler.postAtTime(mTicker, next);
  }
};

参考
Android Developers: DigitalClock


デジタル時計 Digital Clock” への1件のコメント

  1. 現在、androidstudioでデジタル時計を作っているのですが、現在はDigital Clockが非推奨で代わりにtext clock を使うということになっているようなのですが、どうしても秒の表示がされません。どうやったら表示されるか、いい方法があったら教えてください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です