0

我想显示一个自定义对话框并强制用户单击按钮一还是二。

问题是用户可以使用后退按钮,如果他们单击背景中显示的视图,我的对话框也会消失。

为什么?我怎么能防止这种情况呢?

        final Main t = this;
        final Dialog dialog = new Dialog(this);
        dialog.setContentView(R.layout.prompt_input_access);
        dialog.setTitle("Title");

        Button cmdLoginAccount = (Button) dialog.findViewById(R.id.cmdLoginAccount);
        Button cmdLoginBank = (Button) dialog.findViewById(R.id.cmdLoginBank);
        cmdLoginAccount.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                loginToBank = true;
                dialog.dismiss();

                Intent intent = new Intent(t, UserMenu.class);
                startActivity(intent);
            }
        });

        cmdLoginBank.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                loginToBank = false;
                dialog.dismiss();

                Intent intent = new Intent(t, UserMenu.class);
                startActivity(intent);
            }
        });

        dialog.show();
4

1 回答 1

4

您只需要使用setCanceledOnTouchOutside方法:

dialog.setCanceledOnTouchOutside(false);
于 2012-11-22T16:32:06.013 回答