Android:按Back键停止以下活动
首先,我想为我糟糕的英语道歉 我的问题是: 下面的计时器每3秒钟显示一次消息,但当我从程序中出来时(使用后退按钮),消息仍然会弹出Android:按Back键停止以下活动,android,background,Android,Background,首先,我想为我糟糕的英语道歉 我的问题是: 下面的计时器每3秒钟显示一次消息,但当我从程序中出来时(使用后退按钮),消息仍然会弹出 public Runnable mUpdateTimeTask = new Runnable(){ @Override public void run() { // TODO Auto-generated method stub while (true) {
public Runnable mUpdateTimeTask = new Runnable(){
@Override
public void run() {
// TODO Auto-generated method stub
while (true) {
try {
Thread.sleep(3000);}
catch (Exception e) {
// TODO: handle exception
}
mHandler.post(new Runnable(){
@Override
public void run() {
Toast.makeText(getApplicationContext(), "Testing 3 Seconds", Toast.LENGTH_LONG).show();
}
});
}
}
};
我已经使用了mHandler.removeCallbacks(mUpdateTimeTask)代码>仍然无法阻止它
提前感谢。此调用是从可运行线程类发出的,当按下“后退”按钮时,该类仍处于活动状态。它将弹出消息,直到应用程序销毁。
相反,请使用以下命令:
handler.removeCallbacksAndMessages(null);
在removeCallbacksAndMessages的文档中,它说。以下是链接:
“删除obj为token的回调和已发送消息的所有挂起帖子。如果token为null,则将删除所有回调和消息。”我最近遇到了相同的问题,在搜索了很多次后,我找到了解决方案
将仅停止挂起的消息(可运行)。对于当前正在运行的runnable,它将不起作用。您必须编写自己的类来停止当前正在运行的runnable
handler.removeCallbacksAndMessages(null);