Подтвердить что ты не робот

Локальные папки в папке res?

В чем разница между тремя доступными папками в папке res в иерархии проекта? Если у меня есть изображение, чтобы положить его в папку, в какую папку я его вставляю?

4b9b3361

Ответ 1

Я собираюсь предположить, что "три доступные папки" drawable-ldpi, drawable-mdpi и drawable-hdpi. В этом случае, если вы придерживаетесь всех этих папок, вам нужно поместить по одному изображению в каждом размере, соответствующем указанной плотности экрана. Это обсуждается в онлайн-документации , а также в этом сообщении . Вы можете найти набор примеров проектов, показывающих использование разных доступных ресурсов на основе плотности экрана здесь.

Если вы только начинаете разработку Android, вы можете избавиться от всех трех этих каталогов и создать один каталог drawable, разместив свое изображение там. В конце концов, для качественного приложения вы захотите протестировать свои изображения на разных устройствах/эмуляторах с различной плотностью экрана и, возможно, иметь разные изображения для каждой плотности, чтобы улучшить внешний вид вашего приложения.

Ответ 2

Вот ссылка на параметры нескольких устройств.

Как сказано в @CommonsWare, вам не нужно размещать ресурсы в чем угодно, кроме res/layout/или drawable/, но если вы хотите, чтобы ваша программа имела лучший опыт работы на нескольких устройствах с разными экранов/плотности/языков, которые вы можете захотеть считать, что у вас есть этот параметр.

Ответ 3

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

Например, у вас есть три значения String в файле strings.xml в папке значений. У вас также есть одна конкретная строка в папке с именем values-en. Когда андроид откроет ваше приложение и ваши совпадения locale en, он загрузит два значения по умолчанию из папки значений и третьей, более конкретной строки, из значений-en. Если ваш язык - ru, он просто будет использовать значение по умолчанию, потому что у вас нет папки значений. Ru.

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

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