2013-01-24 23 views
1

我已经实现了一个ViewPager,供应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))。除此之外,一切都是一样的。有没有其他人在这个实现方面取得成功?

感谢

如果你使用viewpager作为ListView的头

回答

0

,你需要做到这一点,然后可以正常工作的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; 
    }