setBackPressEnable(true) 没用
NikoSoftware opened this issue · 16 comments
我想返回键不取消 popwindow 设置了这个参数但是没用
setBackPressEnable(false) ,不是true
好像我的小米手机设定true 和 false 都没效果,但用模拟器有效果
模拟器设置了,也没用
@razerdp 你好 setBackPressEnable(false) 无效
我在红米6.0 华为6.0 魅族5.1系统上测试不能拦截返回按钮
@OverRide
public boolean onBeforeDismiss() {
if (canBack) {
return true;
} else {
return false;
}
}
自己用一个变量去控制,完美解决
啊哈,也可以的(虽然不太完美)。。。我都忘了我写过这个回调了- -我现在就加到readme里面
不过这个方法有个问题,因为beforeDismiss会很粗暴的影响dismiss()流程,如果我只需要返回键不dismiss而点其他地方可以dismiss,这个方法就可能需要一个方法来提前把canBack改变以适应不同的需要,所以并不是非常完美哦
是的,不是很完美,现在finish页面的时候,我就是先set成true再dismiss... 不然泄露。不过可以临时解决一下项目需求。
@lapDog 是的,在activity下捕捉是可以的哈哈,只是如果想从popu内部捕捉,目前来说除非能拿到popup内部的那个framelayout,否则似乎没啥办法呢
同时加多一个条件 mPopupWindow.setFocusable(true);就可以按返回键关闭了
这个onBrforeDismiss怎么解决的返回键问题 没怎么看懂
@zhupengxiang 在activity给beforeDismiss回调,在activity捕捉keyevent,或者backpress从而决定popupwindow是否返回关闭
@NikoSoftware
@flyjiang2014
@Mr-PolarBear
@zl277287818
@lapDog
@JadynChan
@zhupengxiang
感谢你们的讨论和idea~在1.8.9里面我用了一种新的思路去解决这个问题,建议大家升级到1.8.9
具体解决方式:1.8.9 解决方案
如果大家有更完美的解决方案,欢迎继续探讨哦~
本issue不关闭。