android脚步---数字时钟和模拟时钟
时钟UI组件是两个非常简单的组件,分为Digitalclock 和Analogclock,
main.xml文件,书中程序有问题,加了两个组件,一个Button和一个<Chronometer
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:gravity="center_horizontal"
- >
- <!-- 定义模拟时钟 -->
- <AnalogClock
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- />
- <!-- 定义数字时钟 -->
- <DigitalClock
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:textSize="14pt"
- />
- <Button
- android:id="@+id/ok"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginTop="25dp"
- android:text="单击我" />
- <Chronometer
- android:id="@+id/test"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"/>
- </LinearLayout>
mainactivity中
- package com.example.clock;
- import android.os.Bundle;
- import android.os.SystemClock;
- import android.app.Activity;
- import android.view.View;
- import android.widget.Button;
- import android.widget.Chronometer;
- import android.widget.Chronometer.OnChronometerTickListener;
- public class MainActivity extends Activity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- //获取计时器组件
- final Chronometer ch = (Chronometer)findViewById(R.id.test);
- //获取开始按钮
- Button start =(Button)findViewById(R.id.ok);
- start.setOnClickListener(new View.OnClickListener()
- {
- @Override
- public void onClick(View source)
- {
- //设置开始时间
- ch.setBase(SystemClock.elapsedRealtime());
- //启动计时器
- ch.start();
- }
- });
- ch.setOnChronometerTickListener(new OnChronometerTickListener()
- {
- public void OnChronometerTick(Chronometer ch)
- {
- if(SystemClock.elapsedRealtime() - ch.getBase() > 20*1000)
- {
- ch.stop();
- }
- }
- @Override
- public void onChronometerTick(Chronometer arg0) {
- // TODO Auto-generated method stub
- }
- });
- }
- }
所以Button和Chronometer均需要在main.xml中添加。
android脚步---数字时钟和模拟时钟的更多相关文章
- Android控件 之 TextClock & AnalogClock(模拟时钟)
TextClock •简介 关于时间的文本显示,Android 提供了 DigitalClock 和 TextClock. DigitalClock是Android第1版本发布,功能很简单,只显示时间 ...
- 模拟时钟(AnalogClock)和数字时钟(DigitalClock)
Demo2\clock_demo\src\main\res\layout\activity_main.xml <LinearLayout xmlns:android="http://s ...
- 练手WPF(一)——模拟时钟与数字时钟的制作(上)
一.Visual Studio创建一个WPF项目. 简单调整一下MainWindow.xaml文件.主要使用了两个Canvas控件,分别用于显示模拟和数字时钟,命名为AnalogCanvas.digi ...
- 一个模拟时钟的时间选择器 ClockPicker
最近开发的一个模拟时钟的时间选择器 ClockPicker,用于 Bootstrap,或者单独作为一个 jQuery 插件. 源代码托管在 GitHub 上: ClockPicker 最近项目中需要用 ...
- css模拟时钟
css模拟时钟 思路: 画时钟数字(x,y)坐标 x = x0 + r*cos(deg) y = y0 + r*sin(deg) 知识点: 创建元素: createElement 添加元素: appe ...
- 【CSS3】纯CSS代码实现模拟时钟,+js对时功能。
使用CSS3纯代码来实现模拟时钟,及指针动画功能. 在这里主要使用到css3一些基本元素: border-radius:圆角边框,画圆形:表盘 Transform:变换,旋转,扭曲:刻度盘,指针形状 ...
- 模拟时钟(AnalogClock)
模拟时钟(AnalogClock) 显示一个带时钟和分针的表面 会随着时间的推移变化 常用属性: android:dial 可以为表面提供一个自定义的图片 下面我们直接看代码: 1.Activity ...
- Windows下编程--模拟时钟的实现
windows下编程--模拟时钟的实现: 主要可以分为几个步骤: (1) 编写按键事件处理(启动和停止时钟) (2) 编写时钟事件处理,调用显示时钟函数 (3) 编写显示时钟函数,要调用显 ...
- 数字设计中的时钟与约束(gate)
转载:https://www.cnblogs.com/IClearner/p/6440488.html 最近做完了synopsys的DC workshop,涉及到时钟的建模/约束,这里就来聊聊数字中的 ...
随机推荐
- js中call方法的使用介绍
js call call 方法 请参阅 应用于:Function 对象 要求 版本 5.5 调用一个对象的一个方法,以另一个对象替换当前对象. call([thisObj[,arg1[, arg2[, ...
- WIN7 64位 IE10打开WEB管理提示证书不安全
用IE10只要在CMD里运行 certutil -setreg chain\minRSAPubKeyBitLength 512 就好了
- 日期和时间特效-查看"今天是否为节假日"
———————————————— <script type="text/javascript"> function start() ...
- easyui datagrid deleteRow(删除行)的BUG!
转自:http://my.oschina.net/fants/blog/77189项目中又用到easyui 的datagrid做数据展示.功能很强大,很实用,但bug也很多.今天这个就够让人头疼. 如 ...
- PHP数组函数试题
使用Ctrl+A查看答案 1.将数组的键名全部转换成小写和大写的函数是什么?答:array_change_key_case($array [,CASE_LOWER|CASE_UPPER]) 2.创建一 ...
- php之PDO使用【转载】
<?php $dbh = new PDO('mysql:host=localhost;dbname=access_control', 'root', ''); $dbh->setAttri ...
- PHP之Zip扩展,解压缩文件,ZipArchive类
<?php $zip = new ZipArchive();//新建一个对象 /* $zip->open这个方法第一个参数表示处理的zip文件名. 第二个参数表示处理模式,ZipArchi ...
- bind启动时提示953端口被使用
部署DNS的时候遇到个奇葩的问题,总是提示 couldn't add command channel 0.0.0.0#953: address in use 实际上系统上并没有进程使用953端口.查询 ...
- css的单位
如果你是一名前端开发工程师,一般px和em使用频率比较高.但是今天的重点是介绍一些我们使用很少.甚至木有听说过的单位. 一.em <style type="text/css" ...
- C# Socket的TCP通讯
Socket的TCP通讯 一. socket的通讯原理 服务器端的步骤如下. (1)建立服务器端的Socket,开始侦听整个网络中的连接请求. (2)当检测到来自客户端的连接请求时,向客户端发送收到连 ...