我有一些代碼設置了定時器,但是如果用戶在使用它時設置了定時器,我需要刪除運行定時器並重新啓動它的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();
}
}
});
誰能幫我找出檢查處理當前狀態的一種方式:
這裏是我的代碼,我身邊有可運行的,如果一個處理程序存在哪些應該只執行的代碼評論?