问题描述
正如我在标题中提到的
这个..
public void dismissDialog(MyDialog dialog){
dialog.dismiss();
}
还有这个..
public void dismissDialog(MyDialog dialog){
dialog.getDialog().dismiss();
}
我应该使用哪个?或者它们之间有什么区别?
编辑 1:MyDialog 是一个 DialogFragment
解决方法
公共无效解雇()
关闭片段及其对话框。如果片段被添加到 后退堆栈,直到并包括此条目的所有后退堆栈状态都将 被弹出。否则,将提交一个新的事务来删除 片段。
所以 dismiss()
方法不仅关闭对话框,还对流程中涉及的片段事务进行管理。但是 dialog.getDialog().dismiss()
只会关闭对话框。
关闭DialogFragment的正确方法是使用dismiss()。