Releases
2.2.3
【Release】2.2.3 (2020/05/07)
我们针对2.2.2系列问题进行了修复,同时增加了一些新的功能,欢迎更新到最新版本~
新增功能/方法:
新增setPopupGravityMode()
:您可以单独设置BasePopup对齐方式而不需要始终带上Gravity
新增OnPopupWindowShowListener
接口:在BasePopup显示后回调该接口,当回调该方法时意味着弹窗已经完成,此时ui已经显示在屏幕上
新增bindLifecycleOwner()
:您现在可以自由绑定您的LifecycleOwner
新增onPreShow()
回调:在BasePopup弹出之前回调该方法,如果返回false,则不会弹出
新增onShowing()
回调:在BasePopup显示后回调该方法,当回调该方法时意味着弹窗已经完成,此时ui已经显示在屏幕上
新增onPopupLayout()
回调:如果弹窗与锚点View关联,当BasePopup在布局的时候回调该方法,分别返回BasePopup在屏幕上的位置和锚点View在屏幕上的位置
新增computeGravity()
:配套onPopupLayout()
回调,计算BasePopup中心点在锚点View的方位。
弃用方法及更替:
BasePopupWindow#dismissWithOutAnimate()
,请使用dismiss(false)
BasePopupWindow#setPopupWindowFullScreen()
,请使用setOverlayStatusbar()
QuickPopupConfig#dismissOnOutSideTouch()
,请使用outSideDismiss()
QuickPopupConfig#allowInterceptTouchEvent()
,请使用outSideTouchable()
优化:
优化DecorView的查询方式,原逻辑会缓存下查询后的DecorView,但可能会因为该DecorView宿主已经销毁或者变更而导致显示错误
支持的最低版本降至Api 16
放弃反射WindowManager的方式,采取ContextWrapper代理,不再担心遭遇黑灰名单封锁了~感谢@xchengDroid 提供的方案
bug修复:
修复覆盖状态栏时事件传递存在偏移的情况
修复isShowing()
存在空指针的情况(issue:#267 )
修复setOverlayStatusbar(false)
情况下与Anchor关联时显示位置错误的问题
修复部分引用没有置空导致可能 存在的内存泄漏问题(事实上并没发现泄漏)
修复BasePopup弹出时,Activity弹出的输入法显示在BasePopup下层的问题
修复全屏Activity判断错误的问题
修复QuickPopupConfig配置缺漏的问题
修复未弹窗时直接调用dismiss(),然后首次调用showPopupWindow()失效的问题
fixed issue:#224
You can’t perform that action at this time.