49

在我的应用程序中,我在活动之上有一个片段。片段填满了整个屏幕。片段的一部分是一个透明的视图,你可以看到下面的视图(属于活动)。有没有办法将触摸事件转移到片段透明视图下的视图?谢谢!

4

3 回答 3

36

onTouchEvent在片段 return 内的覆盖方法中false,它将触摸事件传递给下层视图。

于 2013-10-30T09:44:19.260 回答
32

最简单的方法:

在这里形成:http ://stackoverflow.com/a/34436589/3818437

通过使用声明您的片段不可点击/可聚焦

android:clickable="false"

android:focusable="false"

或者

v.setClickable(false)

v.setFocusable(false)

现在应该将点击事件分派给片段的父级。

注意:要实现这一点,您必须向其直接父级添加点击。或将 android:clickable="false" 和 android:focusable="false" 设置为其直接父级,以将侦听器传递给进一步的父级。

于 2015-12-23T13:29:16.497 回答
3

您可以在 layoutParams 中使用特殊标志。

https://stackoverflow.com/a/53955777/2885859

WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
于 2018-12-28T08:47:22.463 回答