是否可以将滚动事件从子视图转移到父滚动视图?
问题:图像具有缩小缩放功能,并阻止所有触摸事件转移到父滚动视图。
所需的效果:想要将垂直滚动事件传输到ScrollView。基本上,我不希望ImageView处理垂直滚动事件。
<ScrollView
android:id="@+id/scroll"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="40dp"
android:clipToPadding="false"
android:paddingBottom="50dp"
android:scrollbars="vertical">
<ViewPager
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/five_dp" />
</ScrollView>
传呼机具有类似UI的片段
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:background="@android:color/transparent"
android:visibility="visible">
<ImageView
android:id="@+id/click_card_image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="0dp" />
</RelativeLayout>
这是ImageView的触摸监听器
binding.postImage.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
switch (action) {
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_MOVE:
((ScrollView)getActivity().findViewById(R.id.scroll)).requestDisallowInterceptTouchEvent(true);
return true;
default:
return true;
}
}
});
谢谢!