- ViewPager.setOnTouchListener(new View.OnTouchListener() {
- @Override
- public boolean onTouch(View v, MotionEvent event) {
- v.getParent().requestDisallowInterceptTouchEvent(true);
- return false;
- }
- });
- ViewPager.setOnPageChangeListener(new OnPageChangeListener() {
- @Override
- public void onPageSelected(int arg0) {
- }
- @Override
- public void onPageScrolled(int arg0, float arg1, int arg2) {
- ViewPager.getParent().requestDisallowInterceptTouchEvent(true);
- }
- @Override
- public void onPageScrollStateChanged(int arg0) {
- }
- });
以上代码足够解决这个问题。。。
有时候会遇到2.3.x的版本在滑动VIewPager的时候触发onClick事件。
这时候需要注释掉
- mPager.getParent().requestDisallowInterceptTouchEvent(true);