Chronometer
来源:互联网 发布:mac上app store打不开 编辑:程序博客网 时间:2024/06/07 01:07
继承自TextView,因此都能显示文本。但是计时器并不显示当前时间,
只显示从某个时间开始,一共过去了多长时间
android:format=”计时:%s”
setBase(long):设置开始时间//设置时间基准
start():启动定时器
stop():停止定时期
SystemClock.elapsedRealtime()获取从开启手机到现在的毫秒数,包括待机时间,是一个工具类
通过按钮开始定时和结束定时
或者用下面定时器到时间后自动结束定时:
ch.setOnChronometerTickListener(OnChronometerTickListener listener)
如:1分钟停止定时
if(SystemClock.elapsedRealtime()-ch.getBase()>1*1000*60){ch.stop();}
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.xspacing.chronometer.MainActivity" > <Chronometer android:id="@+id/main_chronometer" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_centerInParent="true" android:layout_marginLeft="128dp" android:layout_marginTop="89dp" android:format="计时:%s" android:textColor="#aaa" android:textSize="30sp" /> <Button android:id="@+id/main_btn_restart" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_alignTop="@+id/main_btn_start" android:text="重新计时" /> <Button android:id="@+id/main_btn_start" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/main_chronometer" android:layout_marginTop="80dp" android:text="开始计时" /> <Button android:id="@+id/main_btn_stop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/main_btn_restart" android:layout_alignBottom="@+id/main_btn_restart" android:layout_centerHorizontal="true" android:text="停止计时" /></RelativeLayout>
package com.xspacing.chronometer;import android.app.Activity;import android.os.Bundle;import android.os.SystemClock;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Chronometer;import android.widget.Chronometer.OnChronometerTickListener;import com.xspacing.chronometer.R;/** * @ClassName MainActivity.java * @Description 计时器 * @author Smile * @version v1.0 * @date 2016年9月20日 上午11:31:29 */public class MainActivity extends Activity implements OnClickListener { private Button mBtn_start; private Button mBtn_stop; private Button mBtn_restart; private Chronometer mChronometer; private long mRecordTime; // 记录停止时间 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initViews(); initListener(); } private void initViews() { mBtn_start = (Button) findViewById(R.id.main_btn_start); mBtn_stop = (Button) findViewById(R.id.main_btn_stop); mBtn_restart = (Button) findViewById(R.id.main_btn_restart); mChronometer = (Chronometer) findViewById(R.id.main_chronometer); } private void initListener() { mBtn_start.setOnClickListener(this); mBtn_stop.setOnClickListener(this); mBtn_restart.setOnClickListener(this); // 监听计时器 mChronometer.setOnChronometerTickListener(new OnChronometerTickListener() { @Override public void onChronometerTick(Chronometer chronometer) { } }); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.main_btn_start: // SystemClock.elapsedRealtime()模拟器开启到现在的时间 mChronometer.setBase(SystemClock.elapsedRealtime() - mRecordTime); // 设置基准时间,开始计时的时间 mChronometer.start(); break; case R.id.main_btn_stop: mChronometer.stop(); mRecordTime = SystemClock.elapsedRealtime() - mChronometer.getBase(); break; case R.id.main_btn_restart: mChronometer.setBase(SystemClock.elapsedRealtime()); // 设置基准时间,开始计时的时间 break; default: break; } }}
0 0
- Chronometer
- Chronometer
- Chronometer
- 计时器:Chronometer
- Chronometer 计时器
- 计时器:Chronometer
- Chronometer 计时器
- Chronometer计时器
- Chronometer、ListView
- 计时器Chronometer
- Chronometer计时器
- Chronometer(计时器)
- Chronometer and Telescope Links
- Chronometer 计时器的使用
- android之计时器chronometer
- android之计时器chronometer
- Android Chronometer控件开发
- Android中的Chronometer
- PAT - 1057. 数零壹(20)
- 51单片机lcd代码
- 【Bash百宝箱】shell内建命令之times、umask、unset
- Android点击EditText文本框之外任何地方隐藏键盘
- Tarjan Algorithm
- Chronometer
- PAT - 1058. 选择题(20)
- HDU 4810 Wall Painting(组合数学 + 位运算)——2013ACM/ICPC亚洲区南京站现场赛
- 面试总结
- poj算法刷题进阶
- 初涉java(io编程)
- python爬虫-爬取盗墓笔记
- PAT - 1059. C语言竞赛(20)
- skyline测试页面