热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Android开发实现的计时器功能示例

本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。

本文实例讲述了Android开发实现的计时器功能。分享给大家供大家参考,具体如下:

效果图:

d5a84558bdcc0af4756c90b2c0f81fc0.gif

布局:

三个按钮 加上一个Chronometer

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

tools:context=".MainActivity"

android:orientation="vertical"

android:gravity="center_horizontal">

android:id="@+id/test"

android:textSize="25pt"

android:layout_width="wrap_content"

android:layout_height="wrap_content" />

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="horizontal">

android:id="@+id/start"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="开始"

android:layout_weight="1"/>

android:id="@+id/pause"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="暂停"

android:layout_weight="1"/>

android:id="@+id/go_on"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="继续"

android:layout_weight="1"/>

实现:

四个监听事件 三个按钮 一个计时器

package com.example.a30797.androidtest;

import android.os.SystemClock;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.util.Log;

import android.view.View;

import android.widget.Button;

import android.widget.Chronometer;

public class MainActivity extends AppCompatActivity {

Chronometer ch ;

Button start ;

Button pause ;

Button restart ;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

//获取计时器组件

ch = (Chronometer) findViewById(R.id.test);

//获取开始按钮

start = (Button) findViewById(R.id.start) ;

//暂停计时按钮

pause = (Button) findViewById(R.id.pause);

//继续计时按钮

restart = (Button) findViewById(R.id.go_on);

start.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

//设置开始计时时间

ch.setBase(SystemClock.elapsedRealtime() );

//启动计时器

ch.start();

pause.setEnabled(true);

restart.setEnabled(false);

start.setEnabled(false);

}

});

//暂停按钮监听器

pause.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

start.setText("重新开始");

ch.stop();

start.setEnabled(true);

restart.setEnabled(true);

pause.setEnabled(false);

}

});

//暂停按钮监听器

restart.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

start.setText("重新开始");

ch.start();

start.setEnabled(true);

pause.setEnabled(true);

restart.setEnabled(false);

}

});

//为Chronomter绑定事件监听器

ch.setOnChronometerTickListener(new Chronometer.OnChronometerTickListener() {

@Override

public void onChronometerTick(Chronometer chronometer) {

//如果计时到现在超过了一小时秒

if ( SystemClock.elapsedRealtime() - ch.getBase() > 3600 * 1000) {

ch.stop();

start.setEnabled(true);

restart.setEnabled(false);

pause.setEnabled(false);

}

}

});

}

}

PS:这里再为大家推荐几款相关的在线工具供大家参考:

希望本文所述对大家Android程序设计有所帮助。



推荐阅读
  • 本文介绍如何使用 Android 的 Canvas 和 View 组件创建一个简单的绘图板应用程序,支持触摸绘画和保存图片功能。 ... [详细]
  • 本文介绍了在Android项目中实现时间轴效果的方法,通过自定义ListView的Item布局和适配器逻辑,实现了动态显示和隐藏时间标签的功能。文中详细描述了布局文件、适配器代码以及时间格式化工具类的具体实现。 ... [详细]
  • 本文详细介绍了 Android 开发中 layout_gravity 属性的使用方法及其在不同布局下的效果,旨在帮助开发者更好地理解和利用这一属性来精确控制视图的布局。 ... [详细]
  • Android开发技巧:实现带描边的圆角图片
    本文介绍了一种在Android应用中实现带描边的圆角图片的方法。通过使用BitmapShader类,开发者可以轻松地为图片添加圆角和描边效果,提升应用的视觉体验。 ... [详细]
  • 在 Android 开发中,通过 Intent 启动 Activity 或 Service 时,可以使用 putExtra 方法传递数据。接收方可以通过 getIntent().getExtras() 获取这些数据。本文将介绍如何使用 RoboGuice 框架简化这一过程,特别是 @InjectExtra 注解的使用。 ... [详细]
  • 当unique验证运到图片上传时
    2019独角兽企业重金招聘Python工程师标准model:public$imageFile;publicfunctionrules(){return[[[na ... [详细]
  • 本文介绍如何在Windows Forms应用程序中使用C#实现DataGridView的多列排序功能,包括升序和降序排序。 ... [详细]
  • Android商城应用开发指南(第二部分):创建启动欢迎页
    大多数商城应用程序在启动时会显示一个欢迎页面,以提升用户体验。本文将指导您如何实现一个基本的欢迎页,该页面会在用户打开应用后短暂展示,随后自动跳转至主界面。 ... [详细]
  • Android Studio 中 Activity 组件详解
    本文介绍了 Android 开发中 Activity 的基本概念、生命周期、状态转换以及如何创建和管理 Activity。通过详细的解释和示例代码,帮助开发者更好地理解和使用 Activity。 ... [详细]
  • 本文介绍了如何通过设置背景形状来轻松地为 Android 的 TextView 添加圆形边框。我们将详细讲解 XML 代码的配置,包括圆角、描边和填充等属性。 ... [详细]
  • 深入解析 Android IPC 中的 Messenger 机制
    本文详细介绍了 Android 中基于消息传递的进程间通信(IPC)机制——Messenger。通过实例和源码分析,帮助开发者更好地理解和使用这一高效的通信工具。 ... [详细]
  • 本文详细介绍了如何在Android 4.4及以上版本中配置WebView以实现内容的自动高度调整和屏幕适配,确保中文显示正常,并提供代码示例。 ... [详细]
  • ListView简单使用
    先上效果:主要实现了Listview的绑定和点击事件。项目资源结构如下:先创建一个动物类,用来装载数据:Animal类如下:packagecom.example.simplelis ... [详细]
  • Android中实现复合旋转动画效果
    本文将探讨如何在Android应用中实现动态且吸引人的旋转动画。通过结合多种动画类型,如透明度变化、旋转、缩放和位移,可以创造出更为复杂的视觉效果。我们将从XML布局和Java代码两个方面进行详细介绍。 ... [详细]
  • 如何在应用中添加Banner广告
    本文详细介绍如何在移动应用中集成并添加Banner广告,包括必要的准备工作、代码实现及常见问题解决方法,帮助开发者快速掌握添加Banner广告的技术要点。 ... [详细]
author-avatar
澳洲开奥拓
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有