У меня квадратное изображение (хотя эта проблема также относится к прямоугольным изображениям). Я хочу показать изображение как можно больше, растягивая их, если необходимо, чтобы заполнить их родителей, сохраняя при этом соотношение сторон. Изображение меньше, чем ImageView. Проблема в том, что я не могу растянуть изображение и "сопоставлять" высоту и ширину ImageView.
Это мой файл макета XML:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dp">
<ImageView android:id="@+id/image"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:adjustViewBounds="true"
android:scaleType="fitCenter"
android:layout_marginTop="10dp"/>
<TextView android:id="@+id/name"
android:layout_below="@id/image"
android:layout_alignLeft="@id/image"
android:layout_marginTop="20dp"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="18dp"/>
<TextView android:id="@+id/name2"
android:layout_below="@id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="14dp"/>
</RelativeLayout>
Я использовал множество комбинаций fill_parent
, wrap_content
с несколькими scaleTypes: fitCenter
, fitStart
, fitEnd
, centerInside
, и все они рисуют изображения в правильном соотношении сторон, но ни один из них фактически не масштабирует изображения вверх и сам ImageView, в результате чего TextViews полностью отбрасываются с экрана, пустые пространства внутри ImageView, изображение не масштабируется или обрезается изображение.
Я не могу представить правильную комбинацию для этого.