У меня есть ImageView, он показывает изображение из ресурса. ImageView widht фиксирован (60dp). Высота устанавливается как wrap_content. Изображение будет изменено в соответствии с этой шириной (экономия аспектного рациона - это идеально)
Проблема в том, что андроид устанавливает размер высоты до высоты изображения до изменения размера. Но я хочу, чтобы это изображение имело ровно 60dp по ширине и высоте, должно быть равно высоте изображения после изменения размера.
Вот макет
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:layout_width="60dp"
android:layout_height="wrap_content"
android:src="@drawable/sample"
android:background="#F0F0"/>
</LinearLayout>
попробуйте андроид: adjustViewBounds = "true"
Решение довольно просто, я добавил атрибут android:adjustViewBounds="true"
для ImageView.
Существует два решения
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:layout_width="60dip"
android:layout_height="wrap_content"
android:background="@drawable/thumb"
android:adjustViewBounds="true"/>
</LinearLayout>