<com.example.anticlockwisedemo.Anticlockwiseandroid:id="@+id/id_timer"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="66sp" />继承Chronometer封装好的类:
package com.example.anticlockwisedemo;import java.text.SimpleDateFormat; import java.util.Date; import android.annotation.SuppressLint; import android.content.Context; import android.util.AttributeSet; import android.widget.Chronometer; /***** @author 张小_懒 2015/02/07**/ @SuppressLint( { "ViewConstructor", "SimpleDateFormat" }) public class Anticlockwise extends Chronometer {public Anticlockwise(Context context, AttributeSet attrs){super(context, attrs);// TODO 自动生成的构造函数存根mTimeFormat = new SimpleDateFormat("mm:ss");this.setOnChronometerTickListener(listener);} private long mTime;private long mNextTime;private OnTimeCompleteListener mListener;private SimpleDateFormat mTimeFormat; public Anticlockwise(Context context){super(context); } /*** 重新启动计时*/public void reStart(long _time_s){if (_time_s == -1){mNextTime = mTime;} else{mTime = mNextTime = _time_s;}this.start();} public void reStart(){reStart(-1);} /*** 继续计时*/public void onResume(){this.start();} /*** 暂停计时*/public void onPause(){this.stop();} /*** 设置时间格式** @param pattern* 计时格式*/public void setTimeFormat(String pattern){mTimeFormat = new SimpleDateFormat(pattern);} public void setOnTimeCompleteListener(OnTimeCompleteListener l){mListener = l;} OnChronometerTickListener listener = new OnChronometerTickListener(){@Overridepublic void onChronometerTick(Chronometer chronometer){if (mNextTime <= 0){if (mNextTime == 0){Anticlockwise.this.stop();if (null != mListener)mListener.onTimeComplete();}mNextTime = 0;updateTimeText();return;} mNextTime--; updateTimeText();}}; /*** 初始化时间* @param _time_s*/public void initTime(long _time_s){mTime = mNextTime = _time_s;updateTimeText();} private void updateTimeText(){this.setText(mTimeFormat.format(new Date(mNextTime * 1000)));} interface OnTimeCompleteListener{void onTimeComplete();}}
效果图:
程序很简单,我就不做过多的解释。
详细的大家可以看Demo,已封装,可直接使用,下载地址:http://xiazai.jb51.net/201611/yuanma/androidChronometer(jb51.net).rar
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。