pager.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
v.getParent().requestDisallowInterceptTouchEvent(true);
return false;
}
});
pager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
mPager.getParent().requestDisallowInterceptTouchEvent(true);
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
});
以上代码足够解决这个问题。。。
有时候会遇到2.3.x的版本在滑动VIewPager的时候触发onClick事件。
这时候需要注释掉
mPager.getParent().requestDisallowInterceptTouchEvent(true);
到时候根据设备适配吧。。到时候根据设备适配吧。。
这个是原文 经过测试是可以的 mPager.getParent().requestDisallowInterceptTouchEvent(true); 还是很有用的可以解决实际问题
本文探讨了在Android应用中使用ViewPager组件时,如何避免滑动时触发onClick事件的问题。通过设置getParent().requestDisallowInterceptTouchEvent(true),可以在特定情况下阻止事件拦截,从而解决该问题。

1230

被折叠的 条评论
为什么被折叠?



