美文网首页
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