首先,您可以將所有對話框分配給成員變量,例如,
private Vector<AlertDialog> dialogs = new Vector<AlertDialog>();
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DIALOG_ALERT:
Builder builder = new AlertDialog.Builder(this);
...
AlertDialog dialog = builder.create();
dialogs.add(dialog);
dialog.show();
}
return super.onCreateDialog(id);
}
之後,可以測試對話框是否顯示或不被使用isShowing()
方法的對話框(簽出從android.app.Dialog
http://developer.android.com/reference/android/app/AlertDialog.html類繼承的方法),例如
public void closeDialogs() {
for (AlertDialog dialog : dialogs)
if (dialog.isShowing()) dialog.dismiss();
}
或者你可以完成並重新啓動您的活動爲Pragnani說。取決於你的重啓按鈕在哪裏...