Chronometer 计时器

  Chronometer  用法

Chronometer是 TextView的子类

 

      计时器控件

     从一个默认的时间或你指定的时间开始计时,并按指定格式显示

     主要方法

      setFormat(String format)

      start() / stop()

       setBase(long base)

    

    使用时必须设置format

 

 

 

      

 

  

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单的chronometer计时器的代码示例: XML布局文件: ```xml <Chronometer android:id="@+id/chronometer" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="30sp" /> <Button android:id="@+id/start_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Start" /> <Button android:id="@+id/stop_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Stop" /> ``` Java代码: ```java public class MainActivity extends AppCompatActivity { Chronometer chronometer; Button startButton, stopButton; boolean isRunning = false; long elapsedTime = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 获取布局中的控件 chronometer = findViewById(R.id.chronometer); startButton = findViewById(R.id.start_button); stopButton = findViewById(R.id.stop_button); // 设置计时器的格式 chronometer.setFormat("Time: %s"); // 设置开始按钮的点击事件 startButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 如果计时器没有在运行中 if (!isRunning) { // 如果已经有过计时,则先设置起始时间为上次的计时时间 if (elapsedTime != 0) { chronometer.setBase(SystemClock.elapsedRealtime() - elapsedTime); } else { chronometer.setBase(SystemClock.elapsedRealtime()); } chronometer.start(); // 开始计时 isRunning = true; // 更新状态 } } }); // 设置停止按钮的点击事件 stopButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 如果计时器在运行中 if (isRunning) { chronometer.stop(); // 停止计时 elapsedTime = SystemClock.elapsedRealtime() - chronometer.getBase(); // 记录已经过去的时间 isRunning = false; // 更新状态 } } }); } } ``` 这个示例中,我们使用了`Chronometer`控件来实现计时器的显示,而按钮则用来控制计时器的开始和停止。`isRunning`变量用来记录计时器是否在运行中,`elapsedTime`则用来记录已经过去的时间。在开始按钮的点击事件中,我们通过`SystemClock.elapsedRealtime()`方法来获取系统当前时间,然后设置为计时器的起始时间;在停止按钮的点击事件中,我们记录当前已经过去的时间,并更新`elapsedTime`变量的值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值