当我单击DialogFragment中的按钮时,我打开一个对话框:

    AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(MyFragment.this.getActivity());
    alertDialogBuilder.setTitle("Remove?");
    alertDialogBuilder.setMessage("Are you sure?");
    alertDialogBuilder.setCancelable(true);
    alertDialogBuilder.setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
        }
    });
    alertDialogBuilder.setNegativeButton(getString(R.string.cancel), new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int id) {
            dismiss();
        }

    });
    AlertDialog alertDialog = alertDialogBuilder.create();
    alertDialog.show();


当我在Dialog上按“取消”按钮时,整个片段消失了。

MyFragment是DialgFragment,我认为这是导致错误的原因。

现在的问题是如何关闭DialogFragment中的对话框?

最佳答案

替换此行

dismiss();




dialog.dismiss();


您在DialogFragment内部。
从该DialogFragment dismiss()中删除​​DialogFragment而不是Dialog

关于android - fragment 中的关闭对话框将删除 fragment 本身,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22092374/

10-12 04:12