Масштабирование исходного изображения ImageView сделано правильно. Как? - PullRequest
3 голосов
/ 17 ноября 2011

Область действия

Растровое изображение должно быть показано как imageView.setImageBitmap (растровое изображение) и масштабировано для соответствия пользовательскому интерфейсу.Это можно сделать с помощью:

  1. bitmap = Bitmap.createScaledBitmap(bitmap, newWidth, newHeight, true);
  2. атрибутов ImageView xml, таких как

    android:layout_width="newWidth"
    android:layout_height="newHeight"
    android:adjustViewBounds="true"
    android:scaleType="fitCenter"
    

Проблема

Какой способ лучше для производительности?Я предпочитаю xml, потому что это специфическая проблема пользовательского интерфейса, и я предпочитаю использовать xmls для определения пользовательского интерфейса.Также мы устанавливаем значения ширины / высоты в dp, это означает, что у нас одинаковый интерфейс для разных экранов. Спасибо!

Ответы [ 2 ]

2 голосов
/ 17 ноября 2011

В этом посте очень подробно обсуждается очень похожий вопрос:

Android - декларативный и программный пользовательский интерфейс

Я думаю, что основной вывод заключается в том, что, если вы посмотрите на источник Android, многие из представлений извлекаются из хэш-карты, основанной на их теге XML. Если это достаточно хорошо для Google в основном API, разве это не должно быть достаточно хорошо для нас?

1 голос
/ 17 ноября 2011

Я бы сказал, что делать это в xml - лучший способ. Хранение всего вашего пользовательского интерфейса в xml поможет вам отделить ваше представление от модели ваших данных и контроллера. Или какой паттерн вы используете.

...