我有一个扩展 Android ScrollView 的自定义视图。直接子元素是一个相对布局,它具有可点击的子元素。我希望能够:
- 在滚动视图上检测 onScale Gesture(然后我将手动管理项目的比例)。
- 垂直滚动 ScrollView。
- 保持这些子项目可点击。
到目前为止我尝试过的是(伪代码):
public class CustomView extends ScrollView {
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
return super.onInterceptTouchEvent(ev) || mScaleDetector.onTouchEvent(ev);
}
@Override
public boolean onTouchEvent(MotionEvent ev) {
return mScaleDetector.onTouchEvent(ev);
}
private class ScaleListener extends
ScaleGestureDetector.SimpleOnScaleGestureListener {
@Override
public boolean onScale(ScaleGestureDetector detector) {
// Handle the scale..
return true;
}
}
}
我还尝试了 onInterceptMethod 的不同配置,例如首先调用 super 并返回 mScaleDetector.onTouchEvent 等等。
我成功拦截了比例或点击和滚动,但不是两者兼而有之。
谢谢,丹尼尔