カウントダウン
4328 ワード
Android API(143) —— CountDownTimer
android.os.CountDownTime , Android 4.0 r1, :"liliang1222", ! Android , [email protected]。
, :)
:http://www.cnblogs.com/
Android :http://androidbox.sinaapp.com/
CountDownTimer
: liliang1222
:Android 4.0 r1
public abstract class CountDownTimer extends Object
java.lang.Object
android.os.CountDownTimer
, ( : onTick ), 30s :
new CountdownTimer(30000, 1000) {
public void onTick(long millisUntilFinished) {
mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
}
public void onFinish() {
mTextField.setText("done!");
}
}.start();
onTick , 。 :onTick 。
public CountDownTimer (long millisInFuture, long countDownInterval)
millisInFuture start() onFinish() 。( : , )
countDownInterval onTick(long) 。( : )
public final void cancel ()
( : , )
public abstract void onFinish ()
public abstract void onTick (long millisUntilFinished)
millisUntilFinished 。
public synchronized final CountDownTimer start ()
Android
android (CountDownTimer)
Java:
package com.test.countdowntimer;
import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import com.test.R;
public class CountDownTimeActivity extends Activity implements OnClickListener {
TextView mTextView;
Button mButton1;
Button mButton2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.countdown);
mTextView = (TextView)findViewById(R.id.textView1);
mButton1 = (Button)findViewById(R.id.button1);
mButton2 = (Button)findViewById(R.id.button2);
mButton1.setOnClickListener(this);
mButton2.setOnClickListener(this);
}
CountDownTimer timer = new CountDownTimer(40000,1000) {
@Override
public void onTick(long millisUntilFinished) {
mTextView.setText("seconds remaining: " + millisUntilFinished / 1000);
try {
Thread.sleep(1200);
} catch (InterruptedException e) {
e.printStackTrace();
}
Log.e("CountDown",millisUntilFinished+"");
}
@Override
public void onFinish() {
mTextView.setText("done!");
}
};
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.button1:
timer.start();
break;
case R.id.button2:
timer.cancel();
break;
}
}
}
XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:text="TextView" android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
<Button android:text=" " android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
<Button android:text=" " android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>