Android控件之Chronometer(定時器)

Chronometer是一個簡單的定時器,你能夠給它一個開始時間,並以此定時,或者若是你不給它一個開始時間,它將會使用你的時間通話開始。默認狀況下它會顯示在當前定時器的值的形式「分:秒」或「H:MM:SS的」,或者可使用的Set(字符串)格式的定時器值到一個任意字符串 
1.重要屬性 
android:format:定義時間的格式如:hh:mm:ss 
2.重要方法 
setBase(long base):設置倒計時定時器 
setFormat(String format):設置顯示時間的格式。 
start():開始計時 
stop():中止計時 
setOnChronometerTickListener(Chronometer.OnChronometerTickListener listener):當計時器改變時調用。

3.實例 
佈局文件
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:padding="4dip"
  3.     android:gravity="center_horizontal"
  4.     android:layout_width="match_parent"
  5.     android:layout_height="match_parent">
  6.     <Chronometer android:id="@+id/chronometer"
  7.         android:format="Initial format: "
  8.         android:layout_width="wrap_content"
  9.         android:layout_height="wrap_content"
  10.         android:layout_weight="0"
  11.         android:paddingBottom="30dip"
  12.         android:paddingTop="30dip"
  13.         />
  14.     <Button android:id="@+id/start"
  15.         android:layout_width="wrap_content"
  16.         android:layout_height="wrap_content"
  17.         android:text="開始">
  18.         <requestFocus />
  19.     </Button>
  20.     <Button android:id="@+id/stop"
  21.         android:layout_width="wrap_content"
  22.         android:layout_height="wrap_content"
  23.         android:text="中止">
  24.     </Button>
  25.     <Button android:id="@+id/reset"
  26.         android:layout_width="wrap_content"
  27.         android:layout_height="wrap_content"
  28.         android:text="重置">
  29.     </Button>
  30.     <Button android:id="@+id/set_format"
  31.         android:layout_width="wrap_content"
  32.         android:layout_height="wrap_content"
  33.         android:text="設置格式">
  34.     </Button>
  35.     <Button android:id="@+id/clear_format"
  36.         android:layout_width="wrap_content"
  37.         android:layout_height="wrap_content"
  38.         android:text="清除格式">
  39.     </Button>
  40. </LinearLayout>
複製代碼
主程序
  1. package wjq.WidgetDemo;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. import android.os.SystemClock;
  5. import android.view.View;
  6. import android.view.View.OnClickListener;
  7. import android.widget.Button;
  8. import android.widget.Chronometer;
  9. public class ChronometerDemo extends Activity {
  10. private Chronometer mChronometer;
  11. /* (non-Javadoc)
  12.   * @see android.app.Activity#onCreate(android.os.Bundle)
  13.   */
  14. @Override
  15. protected void onCreate(Bundle savedInstanceState) {
  16.   // TODO Auto-generated method stub
  17.   super.onCreate(savedInstanceState);
  18.   setContentView(R.layout.chronometerpage);
  19.   Button button;
  20.         mChronometer = (Chronometer) findViewById(R.id.chronometer);
  21.         // Watch for button clicks.
  22.         button = (Button) findViewById(R.id.start);
  23.         button.setOnClickListener(mStartListener);
  24.         button = (Button) findViewById(R.id.stop);
  25.         button.setOnClickListener(mStopListener);
  26.         button = (Button) findViewById(R.id.reset);
  27.         button.setOnClickListener(mResetListener);
  28.         button = (Button) findViewById(R.id.set_format);
  29.         button.setOnClickListener(mSetFormatListener);
  30.         button = (Button) findViewById(R.id.clear_format);
  31.         button.setOnClickListener(mClearFormatListener);
  32.     }
  33.     View.OnClickListener mStartListener = new OnClickListener() {
  34.         public void onClick(View v) {
  35.             mChronometer.start();
  36.         }
  37.     };
  38.     View.OnClickListener mStopListener = new OnClickListener() {
  39.         public void onClick(View v) {
  40.             mChronometer.stop();
  41.         }
  42.     };
  43.     View.OnClickListener mResetListener = new OnClickListener() {
  44.         public void onClick(View v) {
  45.             mChronometer.setBase(SystemClock.elapsedRealtime());
  46.         }
  47.     };
  48.     View.OnClickListener mSetFormatListener = new OnClickListener() {
  49.         public void onClick(View v) {
  50.             mChronometer.setFormat("Formatted time (%s)");
  51.         }
  52.     };
  53.     View.OnClickListener mClearFormatListener = new OnClickListener() {
  54.         public void onClick(View v) {
  55.             mChronometer.setFormat(null);
  56.         }
  57.     };
  58. }
相關文章
相關標籤/搜索