在开发的过程中,viewpager有的时候需要嵌套HorizontalScrollView,但是会遇到一种情况就是HorizontalScrollView的滑动事件被viewpager截取了,导致HorizontalScrollView无法工作。看了下网上的文章在*看到了一个解决方案。需要是重写这个HorizontalScrollView:
public class TestScrollView extends HorizontalScrollView使用这个方法后,就可以正常使用HorizontalScrollView滑动功能了。
{
public TestScrollView(Context p_context, AttributeSet p_attrs)
{
super(p_context, p_attrs);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent p_event)
{
return true;
}
@Override
public boolean onTouchEvent(MotionEvent p_event)
{
if (p_event.getAction() == MotionEvent.ACTION_MOVE && getParent() != null)
{
Log.d("DEBUG", "intercept move event");
getParent().requestDisallowInterceptTouchEvent(true);
}
return super.onTouchEvent(p_event);
}
}