In my app I have a fragment on top of the activity. The fragment is filling the whole screen. Part of the fragment is a transparent View and you can see the views under (that belong to the activity). Is there a way to transfer the touch events to the views that are under the transparent View of the fragment? Thanks!
Asked
Active
Viewed 3.9k times
51
-
3this should be standard behaviour I think as long as the transparent view (or it's parents) has no onclicklistener – Ivo Beckers Oct 30 '13 at 08:17
3 Answers
37
In your overriden onTouchEvent method inside the fragment return false, it passes the touch event to the lower layer views.
Vasily Kabunov
- 5,655
- 12
- 47
- 49
Maciej Boguta
- 1,254
- 1
- 10
- 15
34
simplest way :
form here: http://stackoverflow.com/a/34436589/3818437
Declare your fragment not clickable/focusable by using
android:clickable="false"
android:focusable="false"
or
v.setClickable(false)
v.setFocusable(false)
The click events should be dispatched to the fragment's parent now.
Note: To achieve this, you have to add a click to its direct parent. or set android:clickable="false" and android:focusable="false" to its direct parent to pass listener to further parent.
mhdjazmati
- 3,952
- 1
- 23
- 35
3
You can use special flag in layoutParams.
(https://stackoverflow.com/a/53955777/2885859)
WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
Eugene Voronoy
- 1,365
- 1
- 14
- 16