我想顯示進度對話框,只有在需要時纔會顯示「關閉」按鈕,例如當進度值達到其最大值時。在那個「關閉」按鈕上,我想關閉對話框。我使用負面按鈕進行了進度對話框,當用戶點擊它時我可以關閉它,但我不希望「關閉」按鈕在我需要或進度完成時始終可見/始終啓用。如何禁用/啓用進度對話框按鈕
謝謝。
我想顯示進度對話框,只有在需要時纔會顯示「關閉」按鈕,例如當進度值達到其最大值時。在那個「關閉」按鈕上,我想關閉對話框。我使用負面按鈕進行了進度對話框,當用戶點擊它時我可以關閉它,但我不希望「關閉」按鈕在我需要或進度完成時始終可見/始終啓用。如何禁用/啓用進度對話框按鈕
謝謝。
您應該使用ProgressBar和Button構建自定義對話框。然後使用Button.setVisibility(View.VISIBLE)和Button.setVisibility(View.INVISIBLE)
要構建Guillaume的評論和Karim的答案,可以隱藏/顯示或啓用/禁用ProgressDialog上的按鈕,如下所示:
ProgressDialog dlg = new ProgressDialog(this);
dlg.setButton(ProgressDialog.BUTTON_NEUTRAL,
"Close",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//button click stuff here
}
});
dlg.show();
dlg.getButton(ProgressDialog.BUTTON_NEUTRAL).setEnabled(false);
//or alternatively
//dlg.getButton(ProgressDialog.BUTTON_NEUTRAL).setVisibility(View.INVISIBLE);
你可以掛到Button
到以後啓用,一旦你的任務完成。致電show
後,請務必致電getButton
。
我認爲這可能與一個Asynctask – Guillaume
@Guillaume我使用asyncTask和以前我正在解僱對話postexecute但現在我想顯示最終狀態作爲對話框文本和用戶關閉它的選項。我怎樣才能打開關閉按鈕,然後啓用它? – SohailAziz
你可以使用'setVisible(android.View.VISIBLE)'和'setVisible(android.View.INVISIBLE)' http://developer.android.com/reference/android/view/View.html#setVisibility(int ) – Guillaume