2013-05-04 1 views
0

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

И через документы в android developer, кажется, что это единственный способ создать эти значки для разных устройств с разными dpi.

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

ответ

0

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

Я предлагаю вам создать свои значки в разрешении xhdpi и придумать автоматизированный процесс (возможно, используя что-то вроде ImageMagick и язык сценариев по вашему выбору), чтобы создавать более низкие разрешения как часть вашего процесса сборки.

+0

Звучит неплохо. – hguser

0

Вы не должны предоставлять различные растровые ресурсы для всех возможных плотностей элементов изображения, но идеально вы обеспечить низкие точки на дюйм (ldpi), средние (точки на дюйм), MDPI высоких точки на дюйм (ИПЧР) и сверхвысокие (точки на дюйм xhdpi). Если вы не указали все вышеперечисленное, система Android будет автоматически выбирать ближайший соответствующий ресурс и масштабировать его в соответствии с фактической плотностью пикселей экрана.

0

Пожалуйста, посетите Android Asset Studio, где этот сайт предоставит вам все типы изображений изображений dp вашего требования.

В вашем случае, пойти на Generic иконки раздела или иконки меню раздела.

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

+0

На самом деле приложение, над которым мы работаем, похоже на карту google. И мы рисуем разные значки для разных тегов. Например, «парк» и «школа» будут иметь разные значки. Но, спасибо за ваши сайты, я думаю, что буду использовать его в один прекрасный день. – hguser

0

Вы можете поместить свои изображения в/res/drawable, тогда Android будет масштабировать их в соответствии с разрешением dpi, чтобы изображение было примерно того же физического размера, независимо от плотности экрана. В этом случае изображение будет немодифицировано в MDPI, в 1,5 раза больше в HDPI, 2x больше в XHDPI и в 3 раза больше в XXHDPI.

Вы также можете поместить их в/res/drawable-nodpi, и в этом случае масштабирование изображения не будет применено, но вряд ли идеально, поскольку одно и то же изображение будет физически в 3 раза меньше в XXHDPI, чем в MDPI.

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

 Смежные вопросы

  • Нет связанных вопросов^_^