Исходное масштабирование ImageView выполнено правильно. Как?

Масштаб

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

  • bitmap = Bitmap.createScaledBitmap(bitmap, newWidth, newHeight, true);
  • xml Атрибуты ImageView, такие как

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

Проблема

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

2 ответа

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

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

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


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

licensed under cc by-sa 3.0 with attribution.