单击屏幕右侧时,ViewPager会滑动到下一个图像

时间:2014-03-02 15:57:13

标签: android android-viewpager

我有一个ViewPager图像,我想以下列方式滑动:
如果单击屏幕的右侧(左侧),请转到上一个(下一个)图像。这就像屏幕是两半,每一半都在点击方向移动。

我该如何实现?

2 个答案:

答案 0 :(得分:0)

你可以get Disaplay width
然后,您可以在viewpager中覆盖onTouchEvent
当您获得MotionEvent对象时 - 您可以获得“点击”坐标,您将能够理解屏幕用户点击并处理它。

答案 1 :(得分:0)

为触摸侦听器设置ViewPagerViewPager项目的内容视图。

取屏幕/视图宽度的一半,检查event.getX()是否大于半值,如果是,请转到下一个,否则转到上一个。

@Override
public boolean onTouch(View v, MotionEvent ev) {
    if(ev.getAction() == MotionEvent.ACTION_DOWN){
        mDownX = ev.getX();
        mDownY = ev.getY();
        isOnClick = true;
    }else if(ev.getAction() == MotionEvent.ACTION_UP ){
        if (isOnClick ) {
               if(ev.getX() > mViewPager.getWidth()/2) {
                  //go to next
               }else{
                 //go to previous
                  }
               return true;

        }
    }else if(ev.getAction() == MotionEvent.ACTION_MOVE){    
     if (isOnClick && (Math.abs(mDownX - ev.getX()) > DRAG_THRESHOLD || Math.abs(mDownY - ev.getY()) > DRAG_THRESHOLD)) {
        isOnClick = false;
        return false;
    }


 }
    return false
}