UPDATE :代码只是我在文本视图中使用了init,但是这个问题已经回答了,所以我也无法将其删除。所以我会留下这个问题,因为对于任何尝试使用Timertask
handler
并使用Looper.getMainLooper
直接将其附加到UI线程的 private void setRepeatingAsyncTask() {
handler = new Handler(Looper.getMainLooper());
timer = new Timer();
TimerTask task = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
public void run() {
try {
i++;
tview.setText(String.valueOf(i));
} catch (Exception e) {
// error, do something
}
}
});
}
};
timer.schedule(task, 0, 1000); // interval of one minute
}
的人来说都是这样。
OLD QUERY :大家好我正在尝试实现一个运行具有处理程序的任务的计时器。 我每秒都用它来更新UI。 这就是我正在实施的内容:
>>> str = "Hello"
>>> print str[::-1]
'olleH'
当我在创建或其他地方(例如按钮clicklistner等)上创建setRepeatingAsyncTask()时,计时器或处理程序无法启动。 请帮助新的android!
答案 0 :(得分:0)
我使用Handler
每1秒处理一次任务,只使用Handler
:
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
public void run() {
//some task
handler.postDelayed(this, 1000); //looping is every 1 secs
}
}, 0); //initial delay of 0