是否可以删除ScrollView内部布局的滚动事件?
我有以下布局层次结构:
滚动型
RelativeLayout的
的LinearLayout
TableLayout
RelativeLayout的
GestureOverlayView
我想删除包含GestureOverlayView的RelativeLayout的滚动事件,这样当用户绘制一条垂直线时,该事件不会被截取为滚动而是作为绘图。
答案 0 :(得分:3)
我不知道你是否还需要,但这是我测试的答案。 这是阻止父View窃取子视图的touchEvent的方法:
childView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (v.getId() == R.id.childView) {
v.getParent().requestDisallowInterceptTouchEvent(true);
switch (event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_UP:
v.getParent().requestDisallowInterceptTouchEvent(false);
break;
}
}
return false;
}
});
你可以通过以下方式进入父母:
v.getParent().getParent ....