2017-04-25 106 views
-1

我創造了像一個定製對話框方法 -刪除自定義對話框實例

Dialog dialog; 
Dialog dialog; 
public void callDialog() { if(dialog==null) { 
    dialog = new Dialog(DemoActivity.this, R.style.ZoomInOut); 
    dialog.setContentView(R.layout.dialog); 
    dialog.show(); } } 

然後我解僱使用dialog.dismiss()對話框;

但是當我第二次調用對話方法然後對話框== null它會給我錯誤。

這意味着dialog.dismiss()不會從內存中刪除對話框對象?如果沒有,那麼做什麼方式?

回答

1

初始化你的onCreate對話框,設置內容佈局。 然後使用此功能獲得更好的效果。

showDialog(){ 
if(dialog!=null && !dialog.isShowing()) 
dialog.show(); 
} 

hideDialog(){ 
if(dialog!=null && dialog.isShowing()) 
dialog.dismiss(); 
} 
0

dialog = null;dialog.dismiss();

OR

dialog.dismiss(); dialog = null;

0

當您關閉對話框,它停止顯示。該對象本身不會變爲空。

如果你想檢查是否對話框顯示,使用此method