效果图:

activity代码:

package cn.com.chenzheng_java; import java.util.Timer; import java.util.TimerTask; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.SystemClock; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.Chronometer; /** * @description Chronometer计时器的应用实例 * @author chenzheng_java * @since 2011/03/17 * */ public class ChronometerActivity extends Activity { Chronometer chronometer; Timer timer = new Timer(); TimerTask task = new TimerTask() { @Override public void run() { chronometer.stop(); Log.i("通知", "计时结束"); } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.chronometer); chronometer = (Chronometer)findViewById(R.id.chronometer1); Button button = (Button)findViewById(R.id.button_ch); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { /** * SystemClock.elapsedRealtime() 获取从启动开始的时间,设置了它之后计时器会从00:00开始计时 * SystemClock.currentThreadTimeMillis()获取当前Thread的运行时间 * SystemClock.setCurrentTimeMillis (long millis) 设置当前的时间 * * chronometer.setBase()方法可以设置当前的计时器开始计时的时间 */ chronometer.setBase(SystemClock.elapsedRealtime()); /** * 设置现实的格式,你可以指定一个字符串,字符串中包含一个%s,然后chronometer * 就会自动将mm:ss的那个时间放置到你的第一个%s的位置。 */ chronometer.setFormat("当前时间:%s"); // 启动 chronometer.start(); Log.i("通知", "计时开始"); Handler handler = new Handler(); handler.post(new Runnable() { @Override public void run() { timer.schedule(task, 10000); } }); } }); } }

chronometer.xml
<?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:orientation="vertical"> <Chronometer android:id="@+id/chronometer1" android:text="Chronometer" android:gravity="center_horizontal" android:layout_width="match_parent" android:layout_height="wrap_content"></Chronometer> <Button android:text="click" android:id="@+id/button_ch" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> </LinearLayout>

----------------------------------------------------------------------

chronometer是一个计时器,我们可以通过其进行设置。主要的方法有

我们可以看到,我们还可以注册一个Chronometer.OnChronometerTickListener事件,每当chronometer时间发生变化时就会触发该事件,也就是说,1秒钟会触发一次。

更多相关文章

  1. android取得系统时间
  2. Android(安卓)时间戳和时间之间的转化
  3. Android(安卓)获取几天后的时间
  4. Android计时器和倒计时
  5. Android(安卓)自定义Animation,使用Camera对View组件作三维变换
  6. Android图片上传的工具类
  7. Android(Java):长时间未登录提醒
  8. 【HR小时制】如何获取Android系统时间的小时制
  9. Android(安卓)获取时间实时更新UI

随机推荐

  1. OpenShift 4的身份认证 | 让我们重新认识
  2. 如何让你的Service Mesh不再像个玩具?
  3. nginx的四层转发功能
  4. nginx负载均衡搭建phpmyadmin加入redis了
  5. 威力增强版-OpenShift4的SDN :让我们重新
  6. 2021最佳创新边缘解决方案——摩杜云!
  7. Nginx动静分离
  8. Pycharm最高效的快捷键集合
  9. 容器调度策略:让我们重新认识OpenShift系
  10. 让我们重新认识OpenShift系列1