Android基礎控制元件Chronometer計時器控制元件
阿新 • • 發佈:2019-02-07
Chronometer→計時器控制元件
java.lang.Object
android.view.View
android.widget.TextView
android.widget.Chronometer
Java程式碼:
java.lang.Object
android.view.View
android.widget.TextView
android.widget.Chronometer
main.xml佈局
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="秒錶應用" /> <Chronometer android:id="@+id/chronometer" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <Button android:id="@+id/btnStart" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="開始計時" /> <Button android:id="@+id/btnStop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="停止計時" /> <Button android:id="@+id/btnReset" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="重置計時器" /> </LinearLayout>
Java程式碼:
package com.ncsyeyy.YeyyChronometer; import android.app.Activity; import android.os.Bundle; import android.os.SystemClock; import android.view.View; import android.widget.Button; import android.widget.Chronometer; public class MyActivity extends Activity { private Button btnStart; private Button btnStop; private Button btnReset; private Chronometer chronometer; /** * Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); findView(); setListener(); } private void setListener(){ btnStart.setOnClickListener(myListener); btnStop.setOnClickListener(myListener); btnReset.setOnClickListener(myListener); } View.OnClickListener myListener=new View.OnClickListener() { @Override public void onClick(View v) { switch (v.getId()){ case R.id.btnStart: chronometer.start(); break; case R.id.btnStop: chronometer.stop(); break; case R.id.btnReset: chronometer.setBase(SystemClock.elapsedRealtime()); break; default: break; } } }; private void findView(){ chronometer = (Chronometer) findViewById(R.id.chronometer); btnStart = (Button) findViewById(R.id.btnStart); btnStop = (Button) findViewById(R.id.btnStop); btnReset = (Button) findViewById(R.id.btnReset); } // 注意: // setBase方法設定計時器的及時開始基準點,設定為SystemClock.elapsedRealtime(),也就是從當前系統 // 時間開始計時,也就相當於清零了計時器 // Chronometer控制元件是TextView控制元件的一個子類,原理是每隔一秒鐘呼叫異常更新內容的方法類更新Chronometer控制元件的顯示內容 //當前定義的秒錶。如何定義毫秒呢? }
原始碼地址:http://download.csdn.net/detail/csdnyuandaimaxuexi/9105489