Разрешения и плотности - PullRequest
1 голос
/ 06 марта 2012

Я разрабатываю для Android, и мой код отлично работает на Nexus или любом 3,7-дюймовом устройстве.Если я запускаю его на планшете (7 или 10,1 дюйма), тогда шрифты и кнопки очень малы, а расстояние слишком велико.

Если я запускаю его на 2,7 QVGA, то кнопки слишком большие и перекрываются.

Я использую dp и sp по всему макету, поэтому я удивлен, что он не изменился в соответствии с другим размером экрана / плотностью.Означает ли это, что мне нужно записать один и тот же макет XML в 3 папки макетов (большие, средние и малые) и поместить чертеж в 3 папки различной плотности?Или я что-то здесь делаюДа, я прочитал документ «Поддержка нескольких экранов», и мне просто не хватает подробностей (но я следовал советам по использованию dp и sp).Я ищу более краткий / общий подход.

Ответы [ 2 ]

0 голосов
/ 06 марта 2012

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

Но необходимо предоставить разные изображения в папке для рисования, чтобы показать одну или другую функцию в зависимости от размера / плотности экрана.

Если поместить все изображения в папку для рисования (без указания hdi, ldi или mdi), Android попытается настроить изображения, но не всегда работает нормально.

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

0 голосов
/ 06 марта 2012

dp и sp настраиваются в зависимости от плотности экрана.Поэтому экран с разрешением 500 точек на дюйм и 4000 точек на дюйм, но с одинаковыми размерами экрана будет выглядеть одинаково.

Если они имеют разные размеры экрана, он не будет соответствовать желаемому.Если вы хотите поддерживать несколько размеров экрана, вам придется использовать веса или проценты.

Ключ в том, что dp = независимый от устройства пиксель, и он настраивается только в соответствии с плотностью, а не размером экрана.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...