4

ダイアログの外側をクリックすると閉じるカスタムダイアログがありますが、これは望ましくありません。持っ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

4 に答える 4

14

getDialog()。setCanceledOnTouchOutside(false);を使用できます。

于 2013-08-21T11:58:36.973 に答える
8

私のためのこの仕事:

dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL);
于 2013-03-08T05:04:20.460 に答える
1

AlertDialogを使用して問題を解決することができました

于 2012-06-11T19:22:53.117 に答える
0

サンプルコードを確認してください

EditDialog newDialog = new EditDialog();
newDialog .setCancelable(false);   ///This will prevent closing the dialog on back button press/ touch outside
newDialog .show(getSupportFragmentManager(),"dialog");
于 2017-05-04T07:22:10.500 に答える