我有 2 个片段,我需要通过选择和拖动一些小视图来上下滚动这些片段(不选择片段中的任何位置,只有当我拖动这个视图时)。同样,我在第一个片段上有一个 OverScroll,它用动画滚动照片。我尝试使用 VerticalViewPager,但它不适合此任务,因为它与过度滚动冲突。
user4242697
问问题
74 次
1 回答
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.
}
于 2014-12-11T17:08:11.580 回答