美文网首页
popuwindow隐藏时的小细节

popuwindow隐藏时的小细节

作者: Null_01d1 | 来源:发表于2017-11-23 14:36 被阅读0次

         Android的 PopuWindow在调用setOutsideTouchable(boolean b)方法时,如果参数为true,那么点击pop以外的区域,都可以正常的隐藏掉pop,但是如果点击了pop以外的地方,点击地方是View,并且View也设置了点击事件,这时候view就会响应其点击事件,但是此时我们又只想pop消失,不想view响应点击事件应该如何做呢?

        1、不调用pop的setOutsideTouchable()方法。

        2、如果在Activity页面,重写dispatchTouchEvent()方法,如果是在Fragment页面,找到该              fragment依赖的Activity(将该pop对象通过EventBus传递过去),并重写                             dispatchTouchEvent()方法。

        代码如下:

    @Override

    public booleandispatchTouchEvent(MotionEventev){

    if(mPopupWindow!=null&&mPopupWindow.isShowing()){

    mPopupWindow.dismiss();

    return true;

    }

    return super.dispatchTouchEvent(ev);

    }

    相关文章

      网友评论

          本文标题:popuwindow隐藏时的小细节

          本文链接:https://www.haomeiwen.com/subject/kthmextx.html