ImageView не поддерживает максимальную высоту и ширину - PullRequest
35 голосов
/ 13 февраля 2012

Я загружаю изображение в ImageView, используя .setImageURI(selectedImageUri), полученное из фотогалереи пользователя.У меня вид изображения ограничен размером

android:maxHeight="150dp"
android:minHeight="150dp" 
android:maxWidth="150dp" 
android:minWidth="150dp"

Все нормально, пока вы не добавите изображение из галереи.Изображение тогда забывает о максимальной высоте и ширине.Он такой же широкий, как и дисплей, и много места над и под изображением.Мне пришлось добавить скроллвью, чтобы увидеть изображение и прокрутить вниз.есть четное количество места сверху и снизу.Кто-нибудь сталкивался с этой проблемой раньше?

Ответы [ 2 ]

117 голосов
/ 16 февраля 2012

Добавьте следующее к вашему XML-коду (или используйте соответствующую функцию )

android:adjustViewBounds= "true"

Я не знаю, почему это не по умолчаниюпотому что кажется, что это потребуется для большого количества предметов.Тем не менее, добавление этой простой логики в ваш XML-файл будет иметь все значение.

3 голосов
/ 13 февраля 2012

У меня нет. Итак, я буду только гадать

  1. Вы пытались определить параметр ScaleType ?
  2. Проверьте наличие противоположных атрибутов макета, которые могут привести к тому, что инфлятор макета будет игнорировать желаемую ширину / высоту значения.
  3. Полагаю, вы уже пробовали это сделать, но использовали только атрибуты Layout_height / Layout_width вместо атрибутов min / max.
...