[英]How to safely stop a handler?
我在android中定义了以下处理程序:
myHandler = new Handler(Looper.getMainLooper()){
@Override
public void handleMessage(Message msg){
switch (msg.what){
case 1:
break;
case 5:
break;
case 4:
break;
case 3:
break;
default:
super.handleMessage(msg);
}
}
};
现在,消除这种情况的最佳方法是什么? 我是否应该像在这里一样使用它们: handler.removeCallbacksAndMessages(null); 最好在onStop()
或onDestroy()
吗?
您无法停止Runnable。 您可以停止接收这样的回调。
Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
Intent i = new
Intent(MapsActivity.this,MapsActivity.class);
startActivity(i);
finish();
}
};
handler.post(runnable);
// use this when you don't want callback to be called anymore
handler.removeCallbacks(runnable);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.