反转滚动方向Horizo​​ntalScrollview

时间:2013-12-12 14:31:55

标签: android horizontalscrollview

默认情况下,如果从左向右滑动,则向左滚动,反之亦然。

但我想反过来这个动作。因此,如果您从左向右滑动,则滚动视图会向右移动。是否有XML解决方案或者我必须在代码中执行此操作吗?

2 个答案:

答案 0 :(得分:2)

我对此非常不确定,但这些内容是:

  1. 拦截触摸事件
  2. 反转X位置
  3. 发送新的倒置触摸事件
  4. 代码(不是真的):

    HorizontalScrollView hsv;
    hsv.setOnTouchListener(new OnTouchListener() {
    
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            // TODO Auto-generated method stub
            event.setLocation(-1*event.getX(), event.getY());
            hsv.dispatchTouchEvent(ev);
            return true;
        }
    })
    

答案 1 :(得分:0)

你可以使用GestureDetector来监听左/右滑动,实现onScroll和/或onFling(可能两者)。如果您想要按每个手势一个连续项目滚动视图,这可能会正常工作。您当然也可以通过这种方式实现连续滚动,但我会认真考虑这种交互是否提供良好的用户体验。通常在触摸设备上,用户不希望滚动以这种方式工作。

http://developer.android.com/training/gestures/detector.html http://developer.android.com/reference/android/view/GestureDetector.html