Android入门之计时器Chronometer的使用教程

 更新时间:2022年11月11日 09:24:28   作者:TGITCIC  
Chronometer是一个简单的定时器,你可以给它一个开始时间,并以此定时。本文将利用个简单的示例为大家讲解一下它的使用,感兴趣的小伙伴可以尝试一下

介绍

非常简单的一个计时器,没有太多原理,我们直接上代码。

先看课程目标

课程目标

就是一个简单的计时器,我们直接上使用示例吧

界面里有一个计时器,4个按钮。

  • 开始计时,上面这个计时器就开始读秒;
  • 停止计时,计时器会暂停计时;
  • 重置,计时器会归零;
  • 变格式,计时器会变成:Time:%s"的格式显示;

界面端代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    android:orientation="vertical"
    tools:context=".MainActivity">
 
    <Chronometer
        android:id="@+id/chronometer"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textColor="#ff0000"
        android:textSize="60dip" />
 
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dip"
        android:orientation="horizontal">
 
        <Button
            android:id="@+id/btnStart"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="开始记时" />
 
        <Button
            android:id="@+id/btnStop"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="停止记时" />
 
        <Button
            android:id="@+id/btnReset"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="重置" />
 
        <Button
            android:id="@+id/btnFormat"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="变格式" />
    </LinearLayout>
 
</LinearLayout>

后端交互代码

package org.mk.android.demo.demochrometer;
 
import androidx.appcompat.app.AppCompatActivity;
 
import android.os.Bundle;
import android.os.SystemClock;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Chronometer;
 
public class MainActivity extends AppCompatActivity {
    private Chronometer chronometer;
    private Button btnStart,btnStop,btnReset,btnFormat;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btnFormat=(Button) findViewById(R.id.btnFormat);
        btnStart=(Button) findViewById(R.id.btnStart);
        btnStop=(Button) findViewById(R.id.btnStop);
        btnReset=(Button) findViewById(R.id.btnReset);
        btnStart.setOnClickListener(new OnClickListener());
        btnStop.setOnClickListener(new OnClickListener());
        btnReset.setOnClickListener(new OnClickListener());
        btnFormat.setOnClickListener(new OnClickListener());
        chronometer=(Chronometer) findViewById(R.id.chronometer);
    }
    private class OnClickListener implements View.OnClickListener {
        @Override
        public void onClick(View v) {
            switch (v.getId()){
                case R.id.btnStart:
                    chronometer.start();// 开始计时
                    break;
                case R.id.btnStop:
                    chronometer.stop();// 停止计时
                    break;
                case R.id.btnReset:
                    chronometer.setBase(SystemClock.elapsedRealtime());// 复位
                    break;
                case R.id.btnFormat:
                    Log.i("app","into formatter");
                    chronometer.setFormat("Time:%s");// 更改时间显示格式
                    break;
            }
        }
    }
}

运行效果

以上是按下了【变格式】按钮后显示的变化,自己去动动手试一下呗。

到此这篇关于Android入门之计时器Chronometer的使用教程的文章就介绍到这了,更多相关Android计时器Chronometer内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Android应用内存泄漏优化指南

    Android应用内存泄漏优化指南

    内存泄漏(Memory Leak)是指应用中不再使用的对象因错误引用无法被垃圾回收(GC),导致内存占用持续增长,最终可能引发 OOM(Out Of Memory)崩溃 或 应用卡顿,以下是 Android 内存泄漏的优化方案,涵盖检测工具、常见场景及解决方案,需要的朋友可以参考下
    2025-03-03
  • 安卓图片反复压缩后为什么普遍会变绿而不是其它颜色?

    安卓图片反复压缩后为什么普遍会变绿而不是其它颜色?

    今天小编就为大家分享一篇关于安卓图片反复压缩后为什么普遍会变绿而不是其它颜色?,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • Android 解决游戏发行切包资源索引冲突的问题

    Android 解决游戏发行切包资源索引冲突的问题

    这篇文章主要介绍了Android 解决游戏发行切包资源索引冲突的问题,帮助大家更好的理解和学习使用Android,感兴趣的朋友可以了解下
    2021-03-03
  • Android编程自定义圆角半透明Dialog的方法

    Android编程自定义圆角半透明Dialog的方法

    这篇文章主要介绍了Android编程自定义圆角半透明Dialog的方法,涉及Android控件的布局及相关属性设置技巧,需要的朋友可以参考下
    2017-03-03
  • Flutter实现页面切换后保持原页面状态的3种方法

    Flutter实现页面切换后保持原页面状态的3种方法

    这篇文章主要给大家介绍了关于Flutter实现页面切换后保持原页面状态的3种方法,文中通过示例代码介绍的非常详细,对大家的学习或者使用Flutter具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • Android字符串资源文件format方法使用实例

    Android字符串资源文件format方法使用实例

    本文介绍了Android的资源文件values/strings.xml中如何实现格式化字符串,这里举个简单的例子供大家参考
    2013-11-11
  • Android编程下拉菜单spinner用法小结(附2则示例)

    Android编程下拉菜单spinner用法小结(附2则示例)

    这篇文章主要介绍了Android编程下拉菜单spinner用法,结合实例较为详细的总结分析了下拉菜单Spinner的具体实现步骤与相关技巧,并附带两个示例分析其具体用法,需要的朋友可以参考下
    2015-12-12
  • Android检测手机多点触摸点数的方法

    Android检测手机多点触摸点数的方法

    这篇文章主要为大家详细介绍了Android检测手机多点触摸点数的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • Android使用属性动画如何自定义倒计时控件详解

    Android使用属性动画如何自定义倒计时控件详解

    自Android 3.0版本开始,系统给我们提供了一种全新的动画模式,属性动画(property animation),它的功能非常强大,下面这篇文章主要给大家介绍了关于Android使用属性动画如何自定义倒计时控件的相关资料,需要的朋友可以参考下
    2018-05-05
  • Android五子棋游戏程序完整实例分析

    Android五子棋游戏程序完整实例分析

    这篇文章主要为大家分享了Android五子棋游戏程序完整实例,内容丰富,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-04-04

最新评论