很多时候我们都会用到ListView和ViewPager,两者之间的嵌套使用也是不可避免。但是通常使用两者嵌套时都会存在一些事件冲突的问题。
首先是ListView嵌套ViewPager时,ViewPager的事件被屏蔽,解决这个问题的方法是给ViewPager添加监听,在监听里面重写onPageScrolled()方法
viewPager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
}
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// 告诉ListView在ViewPager滑动过程中不要抢事件
listView.requestDisallowInterceptTouchEvent(true);
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
});
}
本文介绍了解决ListView嵌套ViewPager时存在的事件冲突问题,通过为ViewPager添加监听并在onPageScrolled方法中调用ListView的requestDisallowInterceptTouchEvent方法,确保了在滑动ViewPager时不会触发ListView的滚动事件。
1661

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



