我有一个ScrollView
以及里面的线性布局。在线性布局内我有多个视图。多个视图之一(DrawView 可以说)用于绘制东西,所以我必须覆盖onTouchEvent
那种方法并画东西。目前,当我拖动或移动DrawView
, the ScrollView
还处理导致整个视图移动的触摸。我想要的是当我触摸DrawView
,滚动视图不应移动。我在这里浏览了其中一些答案
如何改变子视图和父视图组触摸事件 https://stackoverflow.com/questions/30966412/how-to-vary-between-child-and-parent-view-group-touch-events
但我没有找到任何可以添加的内容DrawView
这将防止ScrollView
从上下移动。注意DrawView
不延长ViewGroup
所以我无法访问请求禁止拦截触摸事件 https://developer.android.com/reference/android/view/ViewGroup#requestDisallowInterceptTouchEvent(boolean)
您可以获得ScrollView
从你的DrawView
's onTouchEvent
:
ScrollView scrollView = (ScrollView) getParent();
然后你可以打电话requestDisallowInterceptTouchEvent
on scrollView
以防止当您触摸时滚动DrawView
.
scrollView.requestDisallowInterceptTouchEvent(true);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)