我已经实现了一个为ImageViews提供服务的ViewPager,如本文和源代码所示:
http://android-developers.blogspot.com/2011/08/horizontal-view-swiping-with-viewpager.html
渲染很好,但是当我试图浏览寻呼机的内容时,我遇到了一个非常奇怪的手势问题。看起来左右滑动手势没有被正确捕获,因此寻呼机只是快速回到第0个元素。如果我继续玩手势,可能会有50次中有1次我可以进入下一页。
我在ListView中使用它(通过getListView()。addHeaderView(myViewPager))。除此之外,一切都是一样的。有没有其他人在这个实施方面取得成功?
谢谢
答案 0 :(得分:0)
如果你在listview标题中使用viewpager,你需要这样做,然后viewpager可以正常工作。
viewPager.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
PointF downP = new PointF();
PointF curP = new PointF();
int act = event.getAction();
if(act == MotionEvent.ACTION_DOWN || act == MotionEvent.ACTION_MOVE || act == MotionEvent.ACTION_UP){
((ViewGroup) v).requestDisallowInterceptTouchEvent(true);
if (downP.x == curP.x && downP.y == curP.y) {
return false;
}
}
return false;
}