我有一个位于底部的滑动抽屉。在此之下,我有一个 50dp 的线性布局。
所以我的布局看起来像这样:
其中红色矩形是滑动抽屉把手
现在,当我将手指从屏幕底部滑到滑动抽屉时,即沿着蓝色路径
滑动抽屉打不开。它没有打开,因为底部布局捕获了点击活动。仅当我在红色矩形内完全单击时,滑动抽屉才会打开。
我尝试使底部布局可点击=>false focussable=>false 仍然不好。
关于如何让底部布局的点击事件在手指离开布局后立即松开点击的任何想法?,这样手柄就可以捕捉到点击
我有一个位于底部的滑动抽屉。在此之下,我有一个 50dp 的线性布局。
所以我的布局看起来像这样:
其中红色矩形是滑动抽屉把手
现在,当我将手指从屏幕底部滑到滑动抽屉时,即沿着蓝色路径
滑动抽屉打不开。它没有打开,因为底部布局捕获了点击活动。仅当我在红色矩形内完全单击时,滑动抽屉才会打开。
我尝试使底部布局可点击=>false focussable=>false 仍然不好。
关于如何让底部布局的点击事件在手指离开布局后立即松开点击的任何想法?,这样手柄就可以捕捉到点击
我建议您创建整个线性布局(棕色底栏)作为抽屉的处理程序。这样做可以让您在第二张图片中随意滑动抽屉。
或者,您也可以使用 FrameLayout 来呈现 LinearLayout 和抽屉视图,就像在单个布局中一样,并将抽屉的宽度和高度设置为线性布局 - 覆盖线性布局的整个区域。
或者,最后,在线性布局(向上方向)上实现SimpleOnGestureListener以执行抽屉的点击动作。
您说您尝试过 clickable=false 和 focusable=false ...您是否还设置了 focusableintouchmode=false?(我会设置所有三个,看看会发生什么)。
正如我最近痛苦地发现的那样,focusable-false 仅涵盖硬件,而不是触摸屏。我不得不添加 focusableintouchmode="false".. 也许这对你也有用。