这里,Chronometer对象的format属性可以用来设置显示时间周围的文字。并且只有它的start()在被调用之后才会显示时间及附加文字,要停止计时器可以调用stop()方法。setBase()方法用来设定设置计时器的起点,当将计时器几点设置为0的时候,计时器将从手机上次重启的时刻开始计时。
方法简介:
long getBase(); //返回基地的时间,由setBase(long)设置的,可以是SystemClock.elapsedRealtime()
String getFormat();//返回当前字符串格式,此格式是通过setFormat()实现的
void setBase(long base);//设置时间,计数定时器指定的值
void setFormat(String format);//设置显示的内容,计时器将会显示这个参数所对应的值得,如果字符串的值
为null,那么返回的值为MM:SS格式的
chronometer是一个计时器,我们可以通过其进行设置。主要的方法有
Chronometer类有3个重要的方法:start、stop和setBase,其中start方法表示开始计时;stop表示停止计时;setBase方法表示重新计时。start和stop方法没有任何参数,setBase方法有参数,表示开始计时的基准时间。如果要从当前时刻重新计时,可以将该参数值设为temClock.elapsedRealtime()。
还可以对Chronometer组件做进一步设置。在默认情况下,Chronometer组件只输出MM:SS:MM:SS的时间格式。例如,当计时到1分20秒时,Chronometer组件会显示01:20。如果变显示的信息内容,可以使用Chronometer类的setFormat方法。该方法需要一个String变并使用“%s”表示计时信息。例如,使用setFormat(“计时信息:%s”)设置显示信息,Chronometer会显示计时信息:(计时信息:10:20)。
Chronometer组件还可以通过onChronometerTick事件方法来捕捉计时动作。该方法1秒调一次。要想使用onChronometerTick事件方法,必须实现接口:android.widget.Chronometer.OnChronometerTickListener
ChronometerDemo.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | |
chronometer.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <?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="fill_parent" android:layout_height="fill_parent"> <Chronometer android:id="@+id/chronometer" android:format="@string/chronometer_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="@string/chronometer_start"> <requestFocus /> </Button> <Button android:id="@+id/stop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/chronometer_stop"> </Button> <Button android:id="@+id/reset" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/chronometer_reset"> </Button> <Button android:id="@+id/set_format" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/chronometer_set_format"> </Button> <Button android:id="@+id/clear_format" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/chronometer_clear_format"> </Button> </LinearLayout> |
string.xml
1 2 3 4 5 6 7 8 9 10 11 | <?xml version="1.0" encoding="utf-8"?> <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="hello">Hello World, ChronometerDemo!</string> <string name="app_name">ChronometerDemo</string> <string name="chronometer_start">Start</string> <string name="chronometer_stop">Stop</string> <string name="chronometer_reset">Reset</string> <string name="chronometer_set_format">Set format string</string> <string name="chronometer_clear_format">Clear format string</string> <string name="chronometer_initial_format">Initial format: <xliff:g id="initial-format">%s</xliff:g></string> </resources> |