Android - Как установить очень длинное изображение, чтобы обрезать его границы и всегда показывать левую половину изображения? - PullRequest
0 голосов
/ 15 марта 2020

У меня есть следующая проблема -

enter image description here

Это изображение взято из xCode и его решения для этой проблемы.

У меня есть ViewHolder (на рисунке соответствующий элемент Cell), который имеет фиксированную ширину. Дело в том, что мне нужно, чтобы изображение, как видно на картинке, обрезалось до его границ, что означает, что сначала он возьмет левую половину изображения и обрежет изображение.

Вот мой ViewHolder XML -

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/vendors_row_item_root_layout"
    android:layout_width="152dp"
    android:layout_height="match_parent"
    android:clipChildren="false">

    <androidx.cardview.widget.CardView
        android:id="@+id/search_image_contact_cardview"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_margin="5dp"
        android:clipChildren="false"
        app:cardCornerRadius="8dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <ImageView
            android:id="@+id/vendors_row_item_imageview"
            android:layout_width="match_parent"
            android:scaleType="centerCrop"
            android:layout_height="match_parent"
            tools:src="@mipmap/ic_launcher" />


    </androidx.cardview.widget.CardView>


</androidx.constraintlayout.widget.ConstraintLayout>

Вот как это выглядит -

enter image description here

И то, к чему я стремлюсь, такое же, как вы можете видеть на первом изображении из элемента «Ячейка» - я хочу, чтобы левая половина всегда была показана.

Как я могу создать это поведение?

...