如何在特定时间后停止运行

时间:2016-02-04 10:05:28

标签: android

我有一个以5ms的间隔运行的处理程序方法。我想在一段时间后停止执行?有任何建议,请

1 个答案:

答案 0 :(得分:0)

您可以通过为处理程序和runnable创建实例成员来管理处理程序(可运行),然后在Activity Lifecycle方法中管理处理程序。

private Handler myHandler;
private Runnable myRunnable = new Runnable() {
@Override
public void run() {
    //Do Something
}
};

使用handler.post启动runnable。

protected void onStart() {
super.onStart();
myHandler = new Handler();
myHandler.post(myRunnable);

}

如果在调用时onStop之前没有执行runnable,我们不想运行它。删除onStop方法中的回调:

protected void onStop() {
super.onStop();
mHandler.removeCallbacks(myRunnable);
 }