计时器来计算每个运动员所消耗的时间等,而在Android系统之中,这种计时的功能就可以使用Chronometer组件,此类的继承结构如下所示:
2java.lang.Object
? android.view.View
? android.widget.TextView
? android.widget.Chronometer
常见的方法
1
|
public Chronometer(Context context)
|
构造
|
创建Chronometer对象
|
2
|
public long getBase()
|
普通
|
设置一个基准时间,可以通过完成
|
3
|
public void setFormat(String format)
|
普通
|
设置显示格式
|
4
|
public long getBase()
|
普通
|
返回设置的基准时间
|
5
|
public String getFormat()
|
普通
|
返回设置的显示格式
|
6
|
public void start()
|
普通
|
开始计时
|
7
|
public void stop()
|
普通
|
停止计时
|
8
|
public void setOnChronometerTickListener (Chronometer.OnChronometerTickListener listener)
|
普通
|
设置计时改变的监听事件
|
xml文件
<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" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <Button android:id="@+id/button1" style="?android:attr/buttonStyleSmall" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:text="开始" /> <Button android:id="@+id/button3" style="?android:attr/buttonStyleSmall" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_toRightOf="@+id/button2" android:text="复位" /> <Button android:id="@+id/button2" style="?android:attr/buttonStyleSmall" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_toRightOf="@+id/button1" android:text="停止" /> <Button android:id="@+id/button4" style="?android:attr/buttonStyleSmall" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:layout_marginRight="24dp" android:text="格式化显示" /> <Chronometer android:id="@+id/chronometer1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/button3" android:layout_alignLeft="@+id/button3" android:layout_marginBottom="52dp" android:textSize="25dp" android:text="Chronometer" /> </RelativeLayout>
JAVA文件
package com.example.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; public class MainActivity extends Activity { public Button start; public Button stop; public Button reset; public Button format; public Chronometer chronometer; ButOperator operator = new ButOperator(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); start = (Button) this.findViewById(R.id.button1); stop = (Button) this.findViewById(R.id.button2); reset = (Button) this.findViewById(R.id.button3); format = (Button) this.findViewById(R.id.button4); chronometer=(Chronometer)this.findViewById(R.id.chronometer1); start.setOnClickListener(this.operator); stop.setOnClickListener(this.operator); reset.setOnClickListener(this.operator); format.setOnClickListener(this.operator); } class ButOperator implements OnClickListener { @Override public void onClick(View view) { // TODO Auto-generated method stub switch (view.getId()) { case R.id.button1: // 开始计时 MainActivity.this.chronometer.start(); break; case R.id.button2: // 停止计时 MainActivity.this.chronometer.stop(); break; case R.id.button3: // 重置参数 MainActivity.this.chronometer.setBase(SystemClock.elapsedRealtime()); break; case R.id.button4: // 格式化数据 MainActivity.this.chronometer.setFormat("当前日期:%s"); break; default: break; } } } }
下节预报:
SlidingDrawer抽屉组件