スクロールビュー内に onClickListener を持つビューがあります。ビューはクリックに反応するはずですが、スクロールビューはほとんどすべてのタッチを ACTION_MOVE として解釈し、タッチ イベントをインターセプトするため、ビューをクリックできません。
次のようにスクロールビューを変更しました(ビューページャーにあり、ビューページャーのスクロールを無効にする必要があるため)
@Override
public boolean onInterceptTouchEvent(MotionEvent p_event) {
if (p_event.getAction() == MotionEvent.ACTION_MOVE) {
return true;
}
return super.onInterceptTouchEvent(p_event);
}
@Override
public boolean onTouchEvent(MotionEvent p_event) {
if (p_event.getAction() == MotionEvent.ACTION_MOVE && getParent() != null) {
getParent().requestDisallowInterceptTouchEvent(true);
}
return super.onTouchEvent(p_event);
}
ScrollView の感度を変更して、最も小さな動きを ACTION_MOVE として登録せず、タッチ イベントをその子に渡すにはどうすればよいですか?
ご協力いただきありがとうございます!