gpt4 book ai didi

android - 如何防止滚动事件被 PopupWindow 拦截

转载 作者:行者123 更新时间:2023-11-29 15:46:23 27 4
gpt4 key购买 nike

当我点击 PopupWindow 外面的空间时,窗口被关闭。但是,如果我想在窗口外滚动 ListView ,滚动事件首先被识别为点击事件,并被窗口拦截,因此窗口被关闭,而滚动不执行.

如何滚动 ListView 同时关闭窗口,这样我就不需要再次滚动它了。

最佳答案

试试这组属性:

    window.setTouchable(true);
window.setOutsideTouchable(true);
window.setFocusable(false);

在这种情况下,当您在其框架外单击时,您的弹出窗口不会被关闭,但您可以添加一个监听器来捕捉外部触摸并关闭弹出窗口:

    window.setTouchInterceptor(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_OUTSIDE) {
window.dismiss();
return true;
}
return false;
}
});

关于android - 如何防止滚动事件被 PopupWindow 拦截,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32793634/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com