// 点击其他地方消失
        viewPuwAddNew.setOnTouchListener(new OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {

                if (puwAddNew != null && puwAddNew.isShowing()) {
                    puwAddNew.dismiss();
                    puwAddNew = null;
                }
                return false;
            }

        });

        // 点击其他地方和返回键消失,数值参数为透明色
        puwAddNew.setBackgroundDrawable(new PaintDrawable(0x00000000));
viewPuwAddNew是View实例过来的,puwAddNew是pupupWindow实例过来的结合这两个即可完美解决popupwindow打开时返回键无响应或者响应了点击其他地方无法消失。
PaintDrawable里面的参数是int类型的aRGB颜色值,为空背景则为主题色,0x00000000表面背景透明。
普通RGB转为0x格式的,建议的方法是在Chrome浏览器调试alpha值,颜色会变为rgba(0, 0, 0, 0.6)格式的颜色值复制之,
然后使用下面的转换工具,



会获得#99000000格式值,把#替换为0x,即0x99000000,酱紫PaintDrawable就可以接受不会报错了




相关文章:

  • 2021-11-17
  • 2021-06-28
  • 2022-02-13
  • 2022-12-23
  • 2022-01-01
  • 2022-12-23
  • 2022-02-12
  • 2021-08-08
猜你喜欢
  • 2021-07-02
  • 2021-12-12
  • 2021-10-24
  • 2021-11-09
  • 2021-03-31
  • 2022-12-23
相关资源
相似解决方案