最近在做一个项目,用到下拉刷新跟侧滑删除SwipeListView,在SwipeListView中用addHeaderView()方法添加一个ViewPager,发现ViewPager滑动不了,查看源码看到在SwipeListView中滑动事件被拦截了,因此ViewPager得不得滑动事件。

    我的解决思路是在SwipeListview中的onInterceptTouchEvent()方法中,判断当前触发滑动事件Item位置,判断当为HeaderView时不拦截,此方法亦可解决问题。

    

        downPosition = pointToPosition((int) x, (int) y);

        Log.i("onInterceptTouchEvent", "downPosition = " + downPosition);

        if(downPosition == 1) {

        downPosition = ListView.INVALID_POSITION;

        return false;

        }