Android编程之计时器Chronometer简单示例
程序员文章站
2023-12-13 23:16:34
本文实例讲述了android计时器chronometer。分享给大家供大家参考,具体如下:
android中chronometer控件继承自textview,这个组件可以...
本文实例讲述了android计时器chronometer。分享给大家供大家参考,具体如下:
android中chronometer控件继承自textview,这个组件可以用1秒的时间间隔进行计时,并显示出计时结果。就是我们常说的计时器工具。
public class chronometeractivity extends activity implements onclicklistener { private chronometer mchronometer; private button start, stop, reset, format, clear_format; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_chronometer); // 初始化view widget initviews(); // 设置监听事件 initlisteners(); } private void initlisteners() { start.setonclicklistener(this); stop.setonclicklistener(this); reset.setonclicklistener(this); format.setonclicklistener(this); clear_format.setonclicklistener(this); } private void initviews() { mchronometer = (chronometer) findviewbyid(r.id.chronometer); start = (button) findviewbyid(r.id.start); stop = (button) findviewbyid(r.id.stop); reset = (button) findviewbyid(r.id.reset); format = (button) findviewbyid(r.id.set_format); clear_format = (button) findviewbyid(r.id.clear_format); } view.onclicklistener mstartlistener = new onclicklistener() { public void onclick(view v) { mchronometer.start(); } }; view.onclicklistener mstoplistener = new onclicklistener() { public void onclick(view v) { mchronometer.stop(); } }; view.onclicklistener mresetlistener = new onclicklistener() { public void onclick(view v) { mchronometer.setbase(systemclock.elapsedrealtime()); } }; view.onclicklistener msetformatlistener = new onclicklistener() { public void onclick(view v) { mchronometer.setformat("formatted time (%s)"); } }; view.onclicklistener mclearformatlistener = new onclicklistener() { public void onclick(view v) { mchronometer.setformat(null); } }; @override public void onclick(view v) { switch (v.getid()) { case r.id.start: mchronometer.start();// 开始计时 break; case r.id.stop: mchronometer.stop();// 暂停计时 break; case r.id.reset: mchronometer.setbase(systemclock.elapsedrealtime());// 从开机到现在的毫秒数 break; case r.id.set_format: // 需要一个string变量,并使用"%s"表示计时信息 mchronometer.setformat("时间累计:%s秒"); break; case r.id.clear_format: mchronometer.setformat(null); break; } } }
布局文件:
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal" android:orientation="vertical" android:padding="10dip" > <chronometer android:id="@+id/chronometer" android:layout_width="wrap_content" android:layout_height="wrap_content" android:format="@string/chronometer_initial_format" android:paddingbottom="30dip" android:paddingtop="30dip" android:textsize="15sp" /> <button android:id="@+id/start" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="开始" > <requestfocus /> </button> <button android:id="@+id/stop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="暂停" > </button> <button android:id="@+id/reset" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="重新计时" > </button> <button android:id="@+id/set_format" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="信息说明" > </button> <button android:id="@+id/clear_format" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="取消说明" > </button> </linearlayout>
ps:这里再为大家推荐几款相关的在线工具供大家参考:
在线秒表工具:
unix时间戳(timestamp)转换工具:
更多关于android相关内容感兴趣的读者可查看本站专题:《android日期与时间操作技巧总结》、《android开发入门与进阶教程》、《android基本组件用法总结》、《android视图view技巧总结》、《android布局layout技巧总结》及《android控件用法总结》
希望本文所述对大家android程序设计有所帮助。