2014-02-28 99 views
1

我打開一個對話框,當我點擊一個按鈕一個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(); 

當我按下取消對話框按鈕,整個片段消失。

MyFragment是DialgFragment我認爲這是錯誤的原因。

現在的問題是如何關閉DialogFragment中的對話框?

回答

1

替換該行

dismiss(); 

dialog.dismiss(); 

你都在裏面DialogFragment。 從此DialogFragmentdismiss()將刪除DialogFragment而不是Dialog

+0

根據我的消息來源是什麼'dialog'這裏? –

+0

在這種方法onClick(DialogInterface對話框,int id)** DialogInterface對話框**對象是對話框 –

+0

哇!對不起,我的愚蠢的評論! –