使用其他视图滑动android片段

时间:2014-12-11 16:21:44

标签: android android-fragments android-viewpager android-overscoll

我有2个片段,我需要通过选择并拖动一些小视图来上下滚动这些片段(只有在我拖动这个视图时才选择片段中的任何位置)。同样,我在第一个片段上有一个OverScroll,用动画滚动照片。我尝试使用VerticalViewPager,但它不适合这项任务,因为它与过度滚动冲突。

1 个答案:

答案 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.

}