android – SimpleOnGestureListener不适用于ScrollView

前端之家收集整理的这篇文章主要介绍了android – SimpleOnGestureListener不适用于ScrollView前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个屏幕,我有一个标题,一个ScrollView和页脚内的TextView.我必须使用ScrollView,因为TextView中的Text也可以很长.

现在,当我在这个屏幕上使用SimpleOnGestureListener时.它不适用于ScrollView部分.删除ScrollView一切正常.但对于长文本的情况,一些文本正在被遗漏.

我想在SimpleOnGestureListener中使用onFling和onDoubleTap.

请指教.

问候,
尚卡尔

解决方法

您必须创建一个自定义ScrollView对象并覆盖它的onTouchEvents以检查您的手势.它在以下代码中进行了演示.
public class GestureScrollView extends ScrollView {
    GestureDetector myGesture;

    public GestureScrollView(Context context,GestureDetector gest) {
        super(context);
        myGesture = gest;
    }

    public GestureScrollView(Context context) {
        super(context);
    }

    public GestureScrollView(Context context,AttributeSet attrs) {
        super(context,attrs);
    }

    @Override
    public boolean onTouchEvent(MotionEvent ev) {
        if (myGesture.onTouchEvent(ev))
            return true;
        else
            return super.onTouchEvent(ev);
    }

    @Override
    public boolean onInterceptTouchEvent(MotionEvent ev) {
        if (myGesture.onTouchEvent(ev))
            return true;
        else
            return super.onInterceptTouchEvent(ev);
        }
    }

如果您遇到任何问题,请告诉我.

猜你在找的Android相关文章