ImageView AdjustViewBounds не работает с относительным макетом
у меня естьImageView
и установили егоlayout_height
в "100dp" и его layout_width в "wrap_content".
Используемый чертеж имеет большие фактические размеры, которые составляют 130dp (ширина) X 215dp (высота).
КогдаImageView
находится внутриLinearLayout
если я установлюadjustViewBounds
true, он получает ширину, которая измеряется в соответствии с соотношением сторон рисованного объекта и layout_width.
Однако при помещении внутрьRelativeLayout
ImageView
получает ту же ширину, что и drawable (130dp), независимо от настроек AdjustViewBounds.
В обоих случаях изображение отображается без искажений, однако границы ImageView разные.
RelativeLayout:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/background_light">
<ImageView
android:layout_width="wrap_content"
android:layout_height="100dp"
android:adjustViewBounds="true"
android:src="@drawable/phone_orange"
android:contentDescription="@null" />
</RelativeLayout>
LinearLayout:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/background_light"
android:orientation="vertical" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="100dp"
android:adjustViewBounds="true"
android:contentDescription="@null"
android:src="@drawable/phone_orange" />
</LinearLayout>
ПочемуImageView
меры по-разному в этих 2 сценариях? Есть ли способ сделатьImageView
вести себя всегда как в случае LinearLayout (обертывание с LinearLayout работает, но это не чистое решение)?