本文主要是介绍Android中 popupWindow 点击外部消失的问题 以及其他内容的小总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Android中PopupWindow的使用是非常常见的弹窗形式,主要得益于其灵活的位置处理。
一、而最难受的地方在于outsideTouchable的处理。
如果你遇到了点击外部不消失
/ 点击外部后消失了但是点击事件透传到了Activity/Fragment
的控件中,可以参考一下步骤设置:
1. popupWindow.setBackgroundDrawable(new ColorDrawable(Color.Transparent))
2. popupWindow.setOutsideTouchable(true)
3. popupWindow.setFocusable(true) //focusable容易忽略
二、蒙层的处理
受大神同事的影响,目前处理蒙层相关的内容都是通过ViewOverlay
。
优点在于:蒙层想覆盖到宿主(Activity/Fragment)中的任意View均可以。
实现方式:我的,仅供参考
public class CustomPopupWidow extends PopupWindos{`````````忽略其余部分`````````/*** @param layerView:宿主中需要覆盖的View*/public void showPw(View anchor,View layerView){ViewOverlay overlay = layerView.getOverlay();Drawable drawabl
这篇关于Android中 popupWindow 点击外部消失的问题 以及其他内容的小总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!