2

在我的 Android 应用程序中,我想安排一个任务在 10 秒内运行,除非用户按下特定按钮。做这个的最好方式是什么?我应该使用 ajava.util.Timer还是java.util.concurrent.ScheduledThreadPoolExecutor其他东西?

先感谢您。

4

3 回答 3

8

如果您从任务访问 UI,则处理程序适合此操作:

Runnable runnable = new Runnable() {
    public void run () {
        // Do your stuff here
    }
}
Handler handler = new Handler();
handler.postDelayed(runnable, 10000);

在您的按钮操作中:

handler.removeCallbacks(runnable);

否则,aTimer很好。

于 2013-05-21T15:29:43.283 回答
2

及其方法Handler_postDelayed

private Runnable requester = new Runnable() {

    @Override
    public void run() {
                 // cpde to execute here             
    }
};

public void onClick(View v) {

 new Handler().postDelayed(requester, 10000);
}
于 2013-05-21T15:29:00.387 回答
1

您可以使用TimerTask和 Handler。

于 2013-05-21T15:31:13.690 回答