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性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...