popwindow弹出后点击外部控件响应点击事件

  • popwindow弹出后,如果想要点击外部消失popwindow,则实现以下方法:
pop.setOutsideTouchable(true);
pop.setBackgroundDrawable(new ColorDrawable());
pop.setOnDismissListener(new OnDismissListener() {
            @Override
            public void onDismiss() {
                // pop.dismiss()方法调用时,回调该函数,点击外部时,也会回调该函数
            }
        });
  • pop弹出后,如果外部控件可以响应点击事件。那么这时候如果需要屏蔽外部控件的点击响应,只是单纯的消失pop,则设置以下方法:
pop.setFocusable(true);
  • 如果不单单是pop消失,而且还要外部控件可以响应点击事件,那么需要pop不获取焦点,点击事件就可以被外部控件拿到。设置如下:
pop.setFocusable(false);

你可能感兴趣的:(Android学习)