Я пытаюсь создать красивую графику высокого разрешения для уведомлений Android, но сталкиваюсь с некоторыми проблемами. В Jelly Bean появилось новое место для больших значков ( см. рекомендации по дизайну уведомлений здесь ) в левой части баннера уведомлений (см. ниже #2 Большой значок):
Все стандартные значки Android красивы и имеют высокое разрешение, но, к сожалению, значки, которые я создавал в Illustrator/Photoshop, не выглядят такими четкими на дисплее с высоким разрешением.
Мои файлы имеют размер 96 x 96 пикселей, но я обеспокоен тем, что это не правильный размер для значков с высоким разрешением, и я нигде не нашел хорошей информации о наилучшем размере для них.
Любая помощь приветствуется!
Иконки Android (и другие элементы пользовательского интерфейса, такие как длина перетаскивания) измеряются в dp
. A dp
— это пиксель, не зависящий от устройства/плотности . 1 dp
соответствует 1 пикселю на экране с разрешением 160 dpi . Но чтобы преобразовать в другие плотности экрана, вам нужно умножить его на коэффициент плотности. Поэтому обычно для большинства значков рекомендуется использовать несколько изображений .
Например, значки уведомлений, используемые в строке состояния , указаны как 24x24 dp с отступом в 1 dp (поэтому фактическая иконка занимает только оптический квадрат 22x22 dp, хотя некоторые из AA могут перетекать в это поле/безопасный кадр в 1 dp). ). Чтобы преобразовать 24 dp в фактические размеры пикселей, используются следующие грубые расчеты:
display density dp units * scale = px units
ldpi ~120 dpi 24x24 dp * .75 = 18x18 px
mdpi ~160 dpi 24x24 dp * 1.0 = 24x24 px
hdpi ~240 dpi 24x24 dp * 1.5 = 36x36 px
xhdpi ~320 dpi 24x24 dp * 2.0 = 48x48 px
xxhdpi ~480 dpi 24x24 dp * 3.0 = 72x72 px
Существует также промежуточная плотность отображения, называемая tvdpi
(~ 213 точек на дюйм), которая находится между mdpi
и hdpi
и имеет масштабный коэффициент 1.33
, но это встречается гораздо реже. В документах Android рекомендуется соблюдать коэффициент 3:4:6:8:12
масштабирования при предоставлении предварительно масштабированных растровых изображений (обычно PNG) для наиболее распространенных плотностей отображения.
Я нигде не вижу, где они указывают размер dp для больших значков, используемых в уведомлениях, но высота каждого уведомления в обычном представлении папки «Входящие » составляет 64 dp . Таким образом, это означает, что максимальный размер отображаемых значков/изображений будет:
ldpi: 48x48 px
mdpi: 64x64 px
hdpi: 96x96 px
xhdpi: 128x128 px
xxhpdi: 192x192 px
Если вы хотите точно знать, какие размеры изображений имеют стандартные значки Android, вы сможете узнать это в пакете шаблонов значков Android версии 4.0 .
См. также этот вопрос SO: Сотовые уведомления: как установить largeIcon
правильный размер?
Дэниел Смит