我将ScrollViews作为ViewPager的页面。我想完全禁用该ViewPager的触摸事件。当我在ViewPager类上覆盖onTouchEvent时,我只设法阻止水平滚动而不是滚动子ScrollViews。
如何为ViewPager及其中的所有ScrollView完全禁用触摸事件?
这只是我的概念证明。下一步是阻止仅对该ViewPager的某些部分进行滚动。
答案 0 :(得分:1)
覆盖scrollview的onInterceptTouchEvent以使用或忽略该事件:
“返回true以从子节点窃取运动事件并通过onTouchEvent()将它们分派到此ViewGroup。当前目标将收到ACTION_CANCEL事件,此处不会再传递任何消息。”
public class InterceptScrollView extends ScrollView {
public InterceptScrollView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
return false;
}
}