我有一个屏幕,我有一个标题,一个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); } }
如果您遇到任何问题,请告诉我.