(TimerTask + Handler)
通过配合Handler来实现timer功能的!
public class TestTimer extends Activity { Timer timer = new Timer(); Handler handler = new Handler(){ public void handleMessage(Message msg) { switch (msg.what) { case 1: setTitle("hear me?"); break; } super.handleMessage(msg); } }; TimerTask task = new TimerTask(){ public void run() { Message message = new Message(); message.what = 1; handler.sendMessage(message); } }; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); timer.schedule(task, 10000); } }
( Runnable + Handler.postDelayed(runnable,time) )
在Android里定时更新 UI,通常使用的是 java.util.Timer, java.util.TimerTask, android.os.Handler组合。实际上Handler 自身已经提供了定时的功能。
private Handler handler = new Handler(); private Runnable myRunnable= new Runnable() { public void run() { handler.postDelayed(this, 1000); count++; tvCounter.setText("Count: " + count); } };
然后在其他地方调用
handler.post(myRunnable);