Размер изображения для всех экранных устройств

Я имею PSDразрешение это 1080X1920, он содержит Dot изображение с разрешением 22X22,

Я обрезал это изображение и поместил его в свой res папка.

У меня вопрос, как Android узнает, что изображение для 1080X1920 экран. Было бы открыть то же изображение больше в small экран и меньше в 2560x1440 разрешающая способность.

Есть ли способ, кроме как положить разные изображения для каждого размера экрана, чтобы сказать Android, чтобы использовать изображение для определенного размера экрана и масштаба для другихscreens

4 ответа

Решение

Используйте напрямую https://romannurik.github.io/AndroidAssetStudio/

Например, два устройства, которые сообщают о нормальном размере экрана, могут иметь фактические размеры экрана и пропорции, которые немного отличаются при измерении вручную. Точно так же два устройства, которые сообщают о плотности экрана hdpi, могут иметь реальные плотности пикселей, которые немного различаются. Android делает эти различия абстрактными для приложений, поэтому вы можете предоставить пользовательский интерфейс, разработанный для обобщенных размеров и плотностей, и позволить системе обрабатывать любые окончательные корректировки по мере необходимости

Вы должны создать различные размеры, макет, изображения и файлы значков для поддержки всех устройств.

изменения в плотности экрана.

xlarge screens are at least 960dp x 720dp
large screens are at least 640dp x 480dp
normal screens are at least 470dp x 320dp
small screens are at least 426dp x 320dp

Сделайте этот макет файлов, чтобы он был одинаковым для всех устройств.

Дайте отступы, поля, шрифт и все свойства в соответствии с устройствами.

res/layout/main_activity.xml           # For handsets (smaller than 600dp available width)
res/layout-sw600dp/main_activity.xml   # For 7” tablets (600dp wide and bigger)
res/layout-sw720dp/main_activity.xml   # For 10” tablets (720dp wide and bigger)

Для макета,

res/layout/my_layout.xml              // layout for normal screen size ("default")
res/layout-large/my_layout.xml        // layout for large screen size
res/layout-xlarge/my_layout.xml       // layout for extra-large screen size
res/layout-xlarge-land/my_layout.xml  // layout for extra-large in landscape orientation

Для изображений

res/drawable-mdpi/graphic.png         // bitmap for medium-density
res/drawable-hdpi/graphic.png         // bitmap for high-density
res/drawable-xhdpi/graphic.png        // bitmap for extra-high-density
res/drawable-xxhdpi/graphic.png       // bitmap for extra-extra-high-density

Для иконы

res/mipmap-mdpi/my_icon.png         // launcher icon for medium-density
res/mipmap-hdpi/my_icon.png         // launcher icon for high-density
res/mipmap-xhdpi/my_icon.png        // launcher icon for extra-high-density
res/mipmap-xxhdpi/my_icon.png       // launcher icon for extra-extra-high-density
res/mipmap-xxxhdpi/my_icon.png      // launcher icon for extra-extra-extra-high-density

Для значка Launcher

36x36 (0.75x) for low-density
48x48 (1.0x baseline) for medium-density
72x72 (1.5x) for high-density
96x96 (2.0x) for extra-high-density
180x180 (3.0x) for extra-extra-high-density
192x192 (4.0x) for extra-extra-extra-high-density (launcher icon only; see note above)

Оформление заказа и поддержка нескольких экранов Официальная документация.

В Android Studio есть плагин, который называется "Batch Drawable" и устанавливается в вашей Android студии. Это поможет создавать изображения разного размера.

Шаги для импорта: Файл -> Настройки -> Плагин -> Обзор репозиториев -> Нажмите кнопку Установить.

Перезапустите свою Android-студию, после чего вы сможете найти "Batch Drawable" в меню файлов Android Studio.

Ссылка: https://github.com/winterDroid/android-drawable-importer-intellij-plugin

Больше вам ничего не нужно делать, просто поместите файлы с разным разрешением в другой файл drawable-xxx. Помните, что все картинки должны иметь одно и то же имя, но Android не будет автоматически соответствовать размеру экрана для каждой картинки, если имя файла не совпадает. Удачи!

Поместите крупное изображение в папку для рисования.

Другие вопросы по тегам