Вопрос

Согласно управлению ресурсами (изображениями) в> версии Android 1.6, нам нужно поддерживать изображение разных резолюций в Drawable-HDPI, для Drawable-MDPI, в папке Drawnable-LPI.

А согласно этой странице: http://developer.android.com/guide/practices/sreens_support.html. ,

В разделе низкой плотности - используются три резолюция: 240 * 320, 240x400, 240x432 для небольшого экрана, нормальный экран, большой экран.

То же самое относится к сечению средней плотности - используются три резолюция: 320x480, 480x800, 480x854 для небольшого экрана, нормальный экран, большой экран.

И тот же путь для высокой плотности ........

Но я здесь растерян:

(1) Как узнать, что используется ли маленький, нормальный или большой экран, я имею в виду, есть ли способ знать?

(2) Как мне узнать, какой тип плотности я использую?

(3) И в Drawable-HDPI, Drawable-MDPI, Drawable-LDPI, изображение, которое мы должны поддерживать особо?

Пожалуйста, поделитесь своими знаниями.

Это было полезно?

Решение

Существуют специальные вызовы Android API, которые могут, во время выполнения, сообщите вам, какую плотность и (маленький / большой / нормальный) размер экрана имеет трубку. Однако, как разработчик, нам не нужно беспокоиться об индивидуальных телефонах вообще. Все, что нам нужно сделать, это иметь активы LDPI / MDPI / HDPI и небольшие / обычные / большие макеты в APK. Android внутренне обрабатывает все.

Не забудьте получить самостоятельное понимание того, как Android определяет, какие активы использовать и псевдоним здесь.

Другие советы

Почему вы хотите знать фактическую плотность? Это бизнес Android. Но я уверен, что есть способ получить эту информацию.

Для развития я положил все в папку HDPI. Я также мог поставить все в общую чертежную папку.

В то время вы опубликуете, что вы можете решить, хотите ли вы предоставить уже складные ресурсы для LDPI и MDPI. Однако это не нужно.

Обновлять: Получить фактическую плотность с этим классом а также лучшие практики

Обновление 2: Я нашел 25 минут видео от Motorola, обсуждая все эти проблемы: Работа с несколькими экранами

1) Измените содержание макета в разных папках, т.е. малый макет, макет - большие и т. Д. Теперь проверим его в разном эмуляторе с разным разрешением экрана.

2) Для выяснения плотности использования устройства
Log.d("Density", "" + (getResources().getDisplayMetrics().density));

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top