Я использую https://github.com/MikeOrtiz/TouchImageView для увеличения ImageView, расширен видоискатель для переопределения canScroll
метода.Пролистывание пейджера работает отлично, но жест масштабирования не работает должным образом.Это вид прокрутки вместо увеличения изображения.
public class HeightWrappingPager extends ViewPager{
public HeightWrappingPager (Context context) {
super(context);
}
public HeightWrappingPager (Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected boolean canScroll(View v, boolean checkV, int dx, int x, int y) {
if (v instanceof TouchImageView) {
return ((TouchImageView) v).canScrollHorizontallyFroyo(-dx);
} else {
return super.canScroll(v, checkV, dx, x, y);
}
}
}
Вот мой взгляд
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.custom_ui.ZoomableImageView
android:id="@+id/post_image"
app:layout_constraintTop_toTopOf="parent"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</android.support.constraint.ConstraintLayout>
Вот мой родительский вид
<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"
app:layout_constraintTop_toBottomOf="@id/toolbar">
<com.custom_ui.HeightWrappingPager
android:id="@+id/post_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/five_dp"
android:background="@color/white_transparent"
android:minHeight="50dp"
app:layout_constraintTop_toBottomOf="@id/post_description" />
<LinearLayout
android:id="@+id/layoutDots"
android:layout_width="match_parent"
android:layout_height="30dp"
android:gravity="center"
android:orientation="horizontal"
app:layout_constraintTop_toBottomOf="@id/post_list" />
</ScrollView>