当我在其外部点击时,自定义对话框将被解除

时间:2012-06-09 00:28:44

标签: android dialog

我有一个自定义对话框,当您在对话框外单击时,该对话框会消失,这是我不想要的。 dialog.setCanceledOnTouchOutside(false);无法解决问题。我做错了什么?

dialog = new Dialog(context);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setCanceledOnTouchOutside(false);
dialog.setContentView(R.layout.twitter_dialog);
// set up edit text and other widgets
dialog.getWindow().setLayout(450, 280);
dialog.show();

编辑:我从另一个具有setCanceledOnTouchOutside(true)的对话框调用此对话框。在调用此对话框之前,前一个对话框将被取消。

4 个答案:

答案 0 :(得分:13)

你可以使用getDialog()。setCanceledOnTouchOutside(false);

答案 1 :(得分:7)

这项工作对我来说:

dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL);

答案 2 :(得分:0)

我能够通过使用AlertDialog

来解决我的问题

答案 3 :(得分:0)

请检查示例代码

EditDialog newDialog = new EditDialog();
newDialog .setCancelable(false);   ///This will prevent closing the dialog on back button press/ touch outside
newDialog .show(getSupportFragmentManager(),"dialog");