Android: Понимание доступной папки

У меня есть изображение размером 250 * 70 пикселей в папке drawable (я только начинаю работать в Android, поэтому я создал папку drawable в res), и у меня есть то же изображение с более высокими размерами в папке drawable-large; но изображение не выглядит так, как я ожидал.

Может ли кто-нибудь объяснить причину/назначение 3 доступных папок?

Где я должен хранить свое изображение так, чтобы оно отображалось правильно в обоих режимах (пейзаж и портрет) и на всех мобильных телефонах (включая планшеты)?

Я хочу, чтобы мое изображение масштабировалось динамически до размера экрана устройства.

Может ли кто-нибудь поделиться своими взглядами или ссылками для поиска?

Ответ 1

По умолчанию Android поддерживает три папки для изображений с разной разрешающей способностью позади, это использование или разрешение Android-устройства, на котором приложение будет выполняться.

Папка изображений hdpi поддерживает изображения для Android Broad Screen или Android-телефонов с более высоким разрешением.

ldpi для более низкого качества изображения, которое поддерживает более ранние наборы андроида

mdpi для поддержки средних изображений xhdi для устройств с максимальным разрешением.

Android OS выбирает изображение самостоятельно, проверяя совместимое устройство и его разрешение.

Надеюсь, это поможет. Примите ваше объяснение.

Ответ 2

Имена папок должны быть:

  • /drawable-ldpi Для экранов низкой плотности
  • /drawable-mdpi Для экранов средней плотности
  • /drawable-hdpi Для экранов высокого разрешения
  • /drawable-xhdpi Для экранов сверхвысокого разрешения

/drawable должен быть зарезервирован для активов, которые вы (1) не заботитесь о том, какое устройство, или для (2) xml-ресурсов, доступных для рисования

Кроме того, вы можете предоставлять различные ресурсы в зависимости от конфигурации с помощью квалификаторов конфигурации, вы можете прочитать все об этом здесь http://developer.android.com/guide/topics/resources/providing-resources.html

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

  • /Вытяжка-земля-ИПЧР

надеюсь, это поможет

Ответ 3

drawable-ldpi

drawable-mdpi

drawable-hdpi

drawable-xhdpi

вытяжка-tvdpi

вытяжка-nodpi

вытяжка-xxhdpi

вытяжка-xxxhdpi

We can also use "drawable-xxhdpi"
xxhdpi (480dpi, Android 4.1 or later)

См. "Табличная колонка Android" в следующей ссылке

http://en.wikipedia.org/wiki/Smartphone

См. "Таблица 1" в следующей ссылке (xxxhdpi)

http://developer.android.com/guide/practices/screens_support.html#xxxhdpi-note

Примечание: квалификатор drawable-xxxhdpi необходим только для того, чтобы предоставить значок запуска, который может казаться больше обычного на устройстве xxhdpi. Вам не нужно предоставлять ресурсы xxxhdpi для всех ваших изображений приложений.

Примечание будет в следующей ссылке http://developer.android.com/design/style/iconography.html#xxxhdpi-launcher

Ответ 5

на самом деле есть 4 стандарта разрешения экрана - посмотрите эту ссылку для получения дополнительной информации http://developer.android.com/guide/practices/screens_support.html, в таблице ниже. Когда вы устанавливаете приложение на устройство, устройство возвращает один из этих стандартов и выбирает ресурсы из соответствующей папки - ldpi, mdpi, hdpi и xhdpi

Ответ 6

1) Причина, по которой скрываются разные папки для рисования, - повышение удобства использования нашего приложения за счет плотности экрана каждого устройства.

2) "Где хранить..." - в идеале вы должны хранить изображение с соответствующим размером для каждой существующей плотности экрана. Если вы новичок, просто используйте одну папку и не беспокойтесь об этом сейчас.

4) Масштабирование изображения Вот классное руководство, которое поможет вам с масштабированием изображения в приложении: https://thoughtbot.com/blog/android-imageview-scaletype-a-visual-guide

3) Ссылки: https://material.io/tools/devices/ - список всех устройств и плотности