android倒计时
2013-11-10 21:20
204 查看
package com.huazi.MyTimer; import java.util.ArrayList; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.widget.Button; import android.widget.EditText; public class MainActivity extends Activity { Button startButton; EditText minuteText; EditText secondText; int minute; int second; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.main); startButton = (Button) findViewById(R.id.button_start); minuteText = (EditText)findViewById(R.id.minute); secondText = (EditText)findViewById(R.id.second); startButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if (!minuteText.getText().toString().equals("")) { minute = Integer.parseInt(minuteText.getText().toString()); } if (!secondText.getText().toString().equals("")) { second = Integer.parseInt(secondText.getText().toString()); } if (minute != 0 || second != 0) { System.out.println(minute+":"+second); ArrayList<Integer> list = new ArrayList<Integer>(); list.add(minute); list.add(second); Intent intent = new Intent(); intent.setAction("com.huazi.MyTimer.StartActivity"); intent.putIntegerArrayListExtra("times", list); startActivity(intent); } } }); } @Override protected void onResume() { // TODO Auto-generated method stub minute = 0; second = 0; super.onResume(); } }
package com.huazi.MyTimer;
import java.util.ArrayList;
import java.util.Timer;
import java.util.TimerTask;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.Window;
import android.widget.TextView;
public class StartActivity extends Activity{
static int minute = -1;
static int second = -1;
final static String tag = "tag";
TextView timeView;
Timer timer;
TimerTask timerTask;
Handler handler = new Handler(){
public void handleMessage(Message msg) {
System.out.println("handle!");
if (minute == 0) {
if (second == 0) {
timeView.setText("Time out !");
if (timer != null) {
timer.cancel();
timer = null;
}
if (timerTask != null) {
timerTask = null;
}
}else {
second--;
if (second >= 10) {
timeView.setText("0"+minute + ":" + second);
}else {
timeView.setText("0"+minute + ":0" + second);
}
}
}else {
if (second == 0) {
second =59;
minute--;
if (minute >= 10) {
timeView.setText(minute + ":" + second);
}else {
timeView.setText("0"+minute + ":" + second);
}
}else {
second--;
if (second >= 10) {
if (minute >= 10) {
timeView.setText(minute + ":" + second);
}else {
timeView.setText("0"+minute + ":" + second);
}
}else {
if (minute >= 10) {
timeView.setText(minute + ":0" + second);
}else {
timeView.setText("0"+minute + ":0" + second);
}
}
}
}
};
};
@Override
protected void onCreate(Bundle savedInstanceState) {
Log.v(tag, "log---------->onCreate!");
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
setContentView(R.layout.start);
timeView = (TextView)findViewById(R.id.myTime);
if (minute == -1 && second == -1) {
Intent intent = getIntent();
ArrayList<Integer> times = intent.getIntegerArrayListExtra("times");
minute = times.get(0);
second = times.get(1);
}
timeView.setText(minute + ":" + second);
timerTask = new TimerTask() {
@Override
public void run() {
Message msg = new Message();
msg.what = 0;
handler.sendMessage(msg);
}
};
timer = new Timer();
timer.schedule(timerTask,0,1000);
}
@Override
protected void onDestroy() {
Log.v(tag, "log---------->onDestroy!");
if (timer != null) {
timer.cancel();
timer = null;
}
if (timerTask != null) {
timerTask = null;
}
minute = -1;
second = -1;
super.onDestroy();
}
@Override
protected void onStart() {
Log.v(tag, "log---------->onStart!");
super.onStart();
}
@Override
protected void onStop() {
Log.v(tag, "log---------->onStop!");
super.onStop();
}
@Override
protected void onResume() {
Log.v(tag, "log---------->onResume!");
super.onResume();
}
@Override
protected void onRestart() {
Log.v(tag, "log---------->onRestart!");
super.onRestart();
}
@Override
protected void onPause() {
Log.v(tag, "log---------->onPause!");
super.onPause();
}
}
效果如下
http://www.oschina.net/code/snippet_437002_10412
相关文章推荐
- android倒计时功能的实现(CountDownTimer)
- Android自定义控件系列(七)—验证码倒计时
- Android -- 自定义view实现keep欢迎页倒计时效果
- Android实现计时与倒计时的几种方法
- Android 倒计时的实现
- Android自定义控件之3D上下翻页效果的倒计时控件
- Android实现计时与倒计时(限时抢购)的几种方法
- Android实现简单的倒计时功能
- android 利用hangler倒计时
- Android实现获取验证码的倒计时功能
- Android实现计时与倒计时(限时抢购)的几种方法
- Android实现加载广告图片和倒计时的开屏布局
- android之Handler Runnable实现倒计时
- Android中 完美实现 计时 倒计时 时间间隔处理等功能实现 by CountDownTimer
- android倒计时的简单实现方法
- Android 倒计时的控制
- Android倒计时控件
- Android计时与倒计时实现限时抢购的5种方法
- Android ListView倒计时功能
- android 倒计时