我想显示一个文本视图,其中经过的秒数从60到1。
我应该如何处理处理程序事件?
time = GetTime.Showtime();
elapsetime.setText(time + " Secs");
答案 0 :(得分:3)
答案 1 :(得分:2)
首先,您必须创建并初始化Timer对象:
Timer myTimer;
myTimer = new Timer();
After that you can call use the schedule method to call timerMethod() (or your method). It will the timerMethod() every second (1000 milliseconds).
myTimer.schedule(new TimerTask() {
@Override
public void run() {
timerMethod();
}
}, 0, 1000);
//Runs your doSomething() in the UI Thread
private void timerMethod()
{
this.runOnUiThread(doSomething);
}
// make your doSomething() runnable
private Runnable doSomething = new Runnable() {
public void run() {
// Your code for doing something
}
答案 2 :(得分:0)
我使用处理程序线程runnable。
handler =new Handler();
runnable = new Runnable() {
@Override
public void run() {
elapsetime.setText(time+" Secs");
time--;
if(time<1){
handler.removeCallbacks(runnable);
}else{
handler.postDelayed(this, 1000);
}
}
};
handler.postDelayed(runnable, 1000);