Как сделать мой ImageView фиксированным, независимо от размера растрового изображения

Поэтому я загружаю изображения из веб-службы, но размер изображений иногда меньше или больше, чем другие изображения, и визуализация выглядит глупо, когда я помещаю их в ListView в Android. Я хотел бы установить размер моего ImageView, чтобы он отображал только часть изображения, если он больше заданной суммы. Я пробовал все, что я могу придумать для установки setMaxWidth / setMaxHeight, установив тип шкалы в centerCrop, используя ClipableDrawable, обертывающий мой BitmapDrawable, используя метод Drawable.setBounds (). Я пробовал настройку в XML и программно, но не работал. Я очень удивлен, что максимальная ширина / высота не сделали ничего. Ниже XML я использую определение ImageView в моем файле макета:

<ImageView android:id="@+id/recipeImage" android:maxHeight="64px" android:maxWidth="64px" android:scaleType="centerCrop" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_alignParentTop="true" android:layout_alignParentBottom="true" android:layout_marginRight="6dip"/> 

Ничего не сработало. Oooooouweee Что с этим? 🙂

Просто удалите атрибуты maxHeight и maxWidth и введите свои единицы в layout_width и layout_height соответствующим образом. Но не используйте блок «px» – вместо этого используйте «dp», потому что они не зависят от устройства.

Это будет соответствовать изображению с заданной высотой и шириной, независимо от размера изображения.

 <ImageView android:id="@+id/image5" android:layout_width="300dp" android:layout_height="200dp" android:src="@drawable/image_1" android:scaleType="fitXY"/>