Android用户界面 UI组件--TextView及其子类(四) Chronometer计时器

时间:2023-03-09 05:59:43
Android用户界面 UI组件--TextView及其子类(四) 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):当计时器改变时调用

实例:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_horizontal"
android:orientation="vertical" > <Chronometer
android:id="@+id/chronometer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ffff0000"
android:textSize="12pt" /> <Button
android:id="@+id/start"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClick"
android:text="启动" /> <Button
android:id="@+id/stop"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClick"
android:text="停止" /> <Button
android:id="@+id/reset"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClick"
android:text="复位" />
</LinearLayout>
package com.light.study.android;

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 MainActivity extends Activity {
private Button startBtn,stopBtn,resetBtn;
private Chronometer chronomete;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
chronomete = (Chronometer) this.findViewById(R.id.chronometer);
startBtn = (Button) this.findViewById(R.id.start);
stopBtn = (Button) this.findViewById(R.id.stop);
resetBtn = (Button) this.findViewById(R.id.reset);
} public void onClick(View v) {
if (v == startBtn) {// 开始计时
chronomete.start();
} else if (v == stopBtn) {
chronomete.stop();// 停止计时
} else if (v == resetBtn) {
chronomete.setBase(SystemClock.elapsedRealtime());// 复位
}
} }

结果:

Android用户界面 UI组件--TextView及其子类(四) Chronometer计时器