Как делать дизайн в Android?

У меня есть 4 папки: drawable-xhdpi, drawable-hdpi, drawable-mdpi, drawable-ldpi, понятно что в каждую папку нужно кидать изображения с dpi: ~320, ~240, ~160, ~120 соответственно.

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

как рисовать бэкграунды?
  • Вопрос задан
  • 18695 просмотров
Пригласить эксперта
Ответы на вопрос 4
Radegast
@Radegast
1 — Пользоваться 9-patch developer.android.com/tools/help/draw9patch.html
2 — Пользоваться однопиксельными заполнителями(Правда это скорее для бэкграунда кнопок, а не активностей)
3 — Как показал опыт, имеется два наиболее популярных соотношения сторон:
а) 1.77 (480x854, 960x540, 1280x720 )
б) 1.6 (480x800, 1280х800)
Соответственно, можно программно определить соотношение и в зависимости от этого подгрузить нужный ресурс с максимальным разрешением. (Т.е. не нужно для каждого разрешения свою картинку. Масштабируемость от большего к меньшему не портит изображение, если выполняется для одного соотношения сторон ).

В своей практике использую все три варианта. Всё зависит от ситуации и свободного времени дизайнера.
Ответ написан
LeoCcoder
@LeoCcoder
нужно стараться делать адаптивный дизайн, который имеет специальные зоны, которые растягиваются/сжимаются при необходимости. если так сделать не удалось, то:
использовать встроенные фильтры, чтобы предоставлять ресурсы для конкретных параметров устройств, кроме x/h/m/ldpi, есть еще несколько применительных к экрану (Available width/height, например), с использованием фильтров можно под каждое разрешение фон нарезать
использовать программные средства, если фильтры не помогают, чтобы подсовывать приложению нужные ресурсы

в случае фона, можно сделать его с запасом, например, фон размером 480x854, отлично подходит для 480x800, только часть фона, во втором случае, будут за пределами экрана.

можно скейлить фон в рантайме, например 480x800 растянуть до 480x854, но это не хорошо, четкость теряется.
Ответ написан
LeoCcoder
@LeoCcoder
Если фон простой, можно вообще не хранить его в ресурсах, а рисовать самому на канве под нужный вариант… вариантов куча )
Ответ написан
Комментировать
Vacxe
@Vacxe
1. Очень полезный ресурс, который подготовит ваши картинки сразу в 4 разрешения. Также есть набор стандартных картинок для экшенбара. goo.gl/bV8fH
2. Дизайн, в зависимости от состояния, графических элементов описываем в xml selector, который потом устанавливаем в background
3. Используем 9patch для создания drawable ресурсов
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы