我有一些代码设置了定时器,但是如果用户在使用它时设置了定时器,我需要删除运行定时器并重新启动它的runnable。但是,如果没有处理程序回调runnable存在,并且调用此代码,它会使我的应用程序崩溃。所以我需要检查一个处理程序是否正在运行,如果是,然后结束并重新启动它,但通过查看文档和其他Stackoverflow问题,我看不到这是否可能。检查Android处理程序是否有回调
submitTimer.setOnClickListener(new View.OnClickListener(){
public void onClick(View v) {
String s = timer.getText().toString();
if(!s.equals(""))
{
//I NEED TO CHECK A RUNNABLE HANDLER EXISTS AND IF SO THEN RUN THIS CODE, IF NOT IGNORE THIS CODE
Map.handler.removeCallbacks(Map.getRunnable());
Map.runnable.run();
//I NEED TO CHECK A RUNNABLE HANDLER EXISTS AND IF SO THEN RUN THIS CODE, IF NOT IGNORE THIS CODE
int l = Integer.parseInt(s);
Map.timerinmins = l;
timer.setHint("Current Timer is "+Map.timerinmins);
timer.setText("");
Toast.makeText(Preferences.this, "Timer is set!", Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(Preferences.this, "No value was entered", Toast.LENGTH_SHORT).show();
}
}
});
谁能帮我找出检查处理当前状态的一种方式:
这里是我的代码,我身边有可运行的,如果一个处理程序存在哪些应该只执行的代码评论?