ViewPager文章的左右滑动手势对我不起作用?

时间:2013-01-24 02:51:56

标签: android

我已经实现了一个为ImageViews提供服务的ViewPager,如本文和源代码所示:

http://android-developers.blogspot.com/2011/08/horizontal-view-swiping-with-viewpager.html

http://code.google.com/p/viewpagerexample/source/browse/trunk/AwesomePager/src/com/geekyouup/paug/awesomepager/AwesomePagerActivity.java

渲染很好,但是当我试图浏览寻呼机的内容时,我遇到了一个非常奇怪的手势问题。看起来左右滑动手势没有被正确捕获,因此寻呼机只是快速回到第0个元素。如果我继续玩手势,可能会有50次中有1次我可以进入下一页。

我在ListView中使用它(通过getListView()。addHeaderView(myViewPager))。除此之外,一切都是一样的。有没有其他人在这个实施方面取得成功?

谢谢

1 个答案:

答案 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;
  }