Android 将motionEvent从一个滚动视图传递到另一个滚动视图

Android 将motionEvent从一个滚动视图传递到另一个滚动视图,android,scroll,scrollview,android-scrollview,Android,Scroll,Scrollview,Android Scrollview,我这里有个棘手的情况。我有两个滚动视图,一个在另一个下面。正如预期的那样,最上面的人得到了事件。我想要实现的是,当顶部的一个到达末尾时,我希望通过一个平滑的转换将事件传递给底层的scrollview。我尝试的是: scrollview1.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) {

我这里有个棘手的情况。我有两个滚动视图,一个在另一个下面。正如预期的那样,最上面的人得到了事件。我想要实现的是,当顶部的一个到达末尾时,我希望通过一个平滑的转换将事件传递给底层的scrollview。我尝试的是:

    scrollview1.setOnTouchListener(new OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {

            if (enable) {

                return scrollview2.onTouchEvent(event);
            } else {
                return false;
            }
        }
    });
但is似乎不起作用,并给出了指针超出范围的异常

    05-16 16:10:22.436: E/AndroidRuntime(22038): FATAL EXCEPTION: main
    05-16 16:10:22.436: E/AndroidRuntime(22038): java.lang.IllegalArgumentException:        pointerIndex out of range
    05-16 16:10:22.436: E/AndroidRuntime(22038):    at android.view.MotionEvent.nativeGetAxisValue(Native Method)
    05-16 16:10:22.436: E/AndroidRuntime(22038):    at android.view.MotionEvent.getY(MotionEvent.java:2090)
    05-16 16:10:22.436: E/AndroidRuntime(22038):    at android.widget.ScrollView.onTouchEvent(ScrollView.java:848)

您应该使用
scrollview2.dispatchTouchEvent(事件)
代替您应该使用
scrollview2.dispatchTouchEvent(事件)