Android 在run()中重复两次
我希望下面的代码块每秒写一次“Hello!”。但它写了两次。我做错了什么Android 在run()中重复两次,android,runnable,Android,Runnable,我希望下面的代码块每秒写一次“Hello!”。但它写了两次。我做错了什么 handler = new Handler(); final Runnable r = new Runnable() { public void run() { Log.d("message", "Hello!"); handler.postDelayed(this, 1000); } };
handler = new Handler();
final Runnable r = new Runnable() {
public void run() {
Log.d("message", "Hello!");
handler.postDelayed(this, 1000);
}
};
handler.postDelayed(r, 1000);
runOnUiThread(r);
它会写入两次,因为您在UI线程队列中发布了两次。一个带有处理程序,另一个带有runnable
handler.postDelayed(r, 1000);
runOnUiThread(r);
根据你的要求,去掉其中的一个。在我看来,您似乎只需要
处理程序
它会写入两次,因为您在UI线程队列中发布了两次。一个带有处理程序,另一个带有runnable
handler.postDelayed(r, 1000);
runOnUiThread(r);
根据你的要求,去掉其中的一个。在我看来,您似乎只需要
处理程序
执行一个简单的实现,创建一个TimerTask
Timer timer = new Timer ();
timer.schedule (new TimerTask () {
@Override
public void run () {
// Print your Hello here...
}
}, 0, 1000);
执行一个简单的实现,创建一个
TimerTask
Timer timer = new Timer ();
timer.schedule (new TimerTask () {
@Override
public void run () {
// Print your Hello here...
}
}, 0, 1000);