Android控件之Chronometer(定时器)

来源:互联网 发布:知乎怎么发不了文章 编辑:程序博客网 时间:2024/06/05 04:16

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.实例

布局文件

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:padding="4dip"    android:gravity="center_horizontal"    android:layout_width="match_parent"    android:layout_height="match_parent">    <Chronometer android:id="@+id/chronometer"        android:format="Initial format: "        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_weight="0"        android:paddingBottom="30dip"        android:paddingTop="30dip"        />    <Button android:id="@+id/start"        android:layout_width="wrap_content"        android:layout_height="wrap_content"         android:text="开始">        <requestFocus />    </Button>    <Button android:id="@+id/stop"        android:layout_width="wrap_content"        android:layout_height="wrap_content"         android:text="停止">    </Button>    <Button android:id="@+id/reset"        android:layout_width="wrap_content"        android:layout_height="wrap_content"         android:text="重置">    </Button>    <Button android:id="@+id/set_format"        android:layout_width="wrap_content"        android:layout_height="wrap_content"         android:text="设置格式">    </Button>    <Button android:id="@+id/clear_format"        android:layout_width="wrap_content"        android:layout_height="wrap_content"         android:text="清除格式">    </Button></LinearLayout>

主程序

package wjq.WidgetDemo;import android.app.Activity;import android.os.Bundle;import android.os.SystemClock;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Chronometer;public class ChronometerDemo extends Activity {private Chronometer mChronometer; /* (non-Javadoc)  * @see android.app.Activity#onCreate(android.os.Bundle)  */ @Override protected void onCreate(Bundle savedInstanceState) {  // TODO Auto-generated method stub  super.onCreate(savedInstanceState);  setContentView(R.layout.chronometerpage);  Button button;        mChronometer = (Chronometer) findViewById(R.id.chronometer);        // Watch for button clicks.        button = (Button) findViewById(R.id.start);        button.setOnClickListener(mStartListener);        button = (Button) findViewById(R.id.stop);        button.setOnClickListener(mStopListener);        button = (Button) findViewById(R.id.reset);        button.setOnClickListener(mResetListener);        button = (Button) findViewById(R.id.set_format);        button.setOnClickListener(mSetFormatListener);        button = (Button) findViewById(R.id.clear_format);        button.setOnClickListener(mClearFormatListener);    }    View.OnClickListener mStartListener = new OnClickListener() {        public void onClick(View v) {            mChronometer.start();        }    };    View.OnClickListener mStopListener = new OnClickListener() {        public void onClick(View v) {            mChronometer.stop();        }    };    View.OnClickListener mResetListener = new OnClickListener() {        public void onClick(View v) {            mChronometer.setBase(SystemClock.elapsedRealtime());        }    };    View.OnClickListener mSetFormatListener = new OnClickListener() {        public void onClick(View v) {            mChronometer.setFormat("Formatted time (%s)");        }    };    View.OnClickListener mClearFormatListener = new OnClickListener() {        public void onClick(View v) {            mChronometer.setFormat(null);        }    };}
0 0
原创粉丝点击