现在的位置: 首页 > 综合 > 正文

Android用户界面 UI组件–TextView及其子类(四) Chronomete

2013年09月20日 ⁄ 综合 ⁄ 共 2029字 ⁄ 字号 评论关闭

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());// 复位
        }
	}
	
}

结果:


抱歉!评论已关闭.