当点击屏幕时隐藏透明对话框视图



我在创建上创建了这个透明窗口,我怎么能使它,而不是按后退按钮,视图是隐藏的,同时按屏幕上的任何地方?

代码:

    final Dialog dialog = new Dialog(this);
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
    dialog.setContentView(R.layout.help);
    dialog.setCanceledOnTouchOutside(true);
    final Window window = dialog.getWindow();
    window.setLayout(WindowManager.LayoutParams.MATCH_PARENT,                        
    WindowManager.LayoutParams.MATCH_PARENT);
    window.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
    window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
    dialog.show();

解决方案:

RelativeLayout rl = (RelativeLayout) dialog.findViewById(R.id.relativeLayout);
        rl.setOnClickListener(new OnClickListener()
        {
            @Override
            public void onClick(View arg0) {
                dialog.dismiss();
            }   
        });

使用

dialog.setCancellable(true);

编辑:

你可以在对话框的视图中添加点击监听器,并取消它

最新更新