我有2个片段,我需要通过选择并拖动一些小视图来上下滚动这些片段(只有在我拖动这个视图时才选择片段中的任何位置)。同样,我在第一个片段上有一个OverScroll,用动画滚动照片。我尝试使用VerticalViewPager,但它不适合这项任务,因为它与过度滚动冲突。
答案 0 :(得分:1)
使用VerticalViewPager
,但覆盖onInterceptTouchEvent
并定义"热点"这将触发片段翻转。作为一个让您入门的示例,我已在自定义onInterceptTouchEvent
中覆盖了ViewPager
,以便边缘滑动仍然可以翻转"片段(水平地,在我的情况下),但内部滑动仍然传递到片段内的ViewFlipper
视图
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
int screenW = getWidth();
int screenH = getHeight();
int screenWReducer = Math.round(screenW*0.5f);
Rect rect = new Rect(
0 + screenWReducer,
0,
screenW - screenWReducer,
screenH
);
if (rect.contains((int) event.getX(), (int) event.getY())) {
return false;//Don't intercept. Left ViewFlippers get touch.
}
return super.onInterceptTouchEvent(event); //Edges still allow page swiping.
}