我创建了一个自定义对话框方法,如 -
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()
;
但是当我第二次调用dialog方法然后对话框== null它会给我错误。
这意味着dialog.dismiss()
不会从内存中删除对话框对象?如果没有,那么该怎么做呢?
答案 0 :(得分:1)
在onCreate中初始化对话框并设置内容布局。 然后使用此功能获得更好的结果。
showDialog(){
if(dialog!=null && !dialog.isShowing())
dialog.show();
}
hideDialog(){
if(dialog!=null && dialog.isShowing())
dialog.dismiss();
}
答案 1 :(得分:0)
将dialog = null;
放在dialog.dismiss();
OR
dialog.dismiss();
dialog = null;
答案 2 :(得分:0)
当您关闭对话框时,它会停止显示。对象本身不会变为null。
如果要检查是否显示对话框,请使用此method