要取消Android ProgressDialog的回調,您可以使用以下方法:
DialogInterface.OnKeyListener
實例,用于監聽鍵盤事件。DialogInterface.OnKeyListener keyListener = new DialogInterface.OnKeyListener() {
@Override
public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_UP) {
// 如果按下了返回鍵,則取消ProgressDialog
dialog.dismiss();
return true;
}
return false;
}
};
ProgressDialog
時,將這個keyListener
添加到對話框中。ProgressDialog progressDialog = new ProgressDialog(this);
progressDialog.setMessage("正在加載...");
progressDialog.setOnKeyListener(keyListener);
現在,當用戶按下返回鍵時,ProgressDialog
將會被取消。請注意,這種方法不僅會取消回調,還會關閉對話框。如果您只想取消回調而不關閉對話框,可以考慮使用removeCallbacks()
方法。但是,這需要您保存對Handler
或Runnable
的引用,以便在需要時調用removeCallbacks()
。