Android Chronometer类
来源:互联网 发布:跳蚤街二手市场软件 编辑:程序博客网 时间:2024/06/11 08:34
Android Chronometer类
Chronometer类是一个简单的计时器。
1、简单用法
android:format设置文字格式,默认是MM:SS"或"H:MM:SS"。以%s来格式化。<Chronometerandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:format="计时:%s"/>
2、Chronometer的方法
start开始计时,stop停止计时。public void start() {mStarted = true;updateRunning();}public void stop() {mStarted = false;updateRunning();}start和stop都会调用updateRunning方法,只是mStarted的状态不一样。
updateRunning方法,当running为true时,会修改文字,否则将暂停计时。
private void updateRunning() {boolean running = mVisible && mStarted;if (running != mRunning) {if (running) {updateText(SystemClock.elapsedRealtime());dispatchChronometerTick();postDelayed(mTickRunnable, 1000);} else {removeCallbacks(mTickRunnable);}mRunning = running;}}updateText方法,把现在的时间和mBase相比较,得到计时时间,并格式化显示。而mBase是在Chronometer初始化时设置。
private synchronized void updateText(long now) {mNow = now;long seconds = mCountDown ? mBase - now : now - mBase;seconds /= 1000;boolean negative = false;if (seconds < 0) {seconds = -seconds;negative = true;}String text = DateUtils.formatElapsedTime(mRecycle, seconds);if (negative) {text = getResources().getString(R.string.negative_duration, text);}if (mFormat != null) {Locale loc = Locale.getDefault();if (mFormatter == null || !loc.equals(mFormatterLocale)) {mFormatterLocale = loc;mFormatter = new Formatter(mFormatBuilder, loc);}mFormatBuilder.setLength(0);mFormatterArgs[0] = text;try {mFormatter.format(mFormat, mFormatterArgs);text = mFormatBuilder.toString();} catch (IllegalFormatException ex) {if (!mLogged) {Log.w(TAG, "Illegal format string: " + mFormat);mLogged = true;}}}setText(text);}setFormat设置文字格式。
setBase设置起始时间。
public void setBase(long base) {mBase = base;dispatchChronometerTick();updateText(SystemClock.elapsedRealtime());}setOnChronometerTickListener设置监听器。
setCountDown方法设置是否是倒计时,只有版本大于24才有效。
阅读全文
0 0
- Android Chronometer类
- android计时器Chronometer类的使用
- android 中Chronometer类源码分析
- android之计时器chronometer
- android之计时器chronometer
- Android Chronometer控件开发
- Android中的Chronometer
- android 计时器 Chronometer
- android之计时器 chronometer
- Android---25---Chronometer计时器
- Android 计时器,仿Chronometer
- android chronometer 计时器
- Android Chronometer(定时器)
- Android控件之Chronometer
- Android之Chronometer
- Android之计时器Chronometer
- Android中的Chronometer控件
- Android练习-----计时器(Chronometer)
- Lucene 代码详解
- 完全理解 Python 迭代对象、迭代器、生成器
- 微信开发必备外网映射工具----Ngroke
- 【Caffe特征图可视化】【权重图weight】【特征图feat】
- 你不知道的CSS3选择器--精辟用法
- Android Chronometer类
- 4.3(4)
- jqgrid ajax加载
- linux 如何显示一个文件的某几行(中间几行)
- SequenceInputStream合并流
- Git版本冲突
- Caffe、TensorFlow、MXnet三个开源库对比
- 设计模式笔记之装饰模式---变继承关系为组合关系
- 切换fragment