2015-01-03 2 views
0

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

Я выполняю тесты на своем личном телефоне (Galaxy S4), который является телефоном xxhdpi. У меня есть ресурс bitmap с возможностью рисования, который имеет 315px * 315px в папке xxhdpi. Я масштабируюсь это изображение вниз и размещены версии в каждом из следующих папок (Все единицы в пикселях):

xhdpi = 210 x 210 
hdpi = 157.5 x 157.5 
mdpi = 105 x 105 
ldpi = 78.75 x 78.75 

Это растровые дисплеи в надлежащей пропорции, если смотреть на моем S4, но когда я загрузить его в эмуляторе с mdpi устройство кажется намного меньше, чем нужно.

Я пошел по правилам масштабирования на сайте разработчиков Android, поэтому я решил, что масштабирование изображений вниз соответственно учитывает DP. Я чувствую, что здесь что-то не хватает.

ответ

0

Вот ссылка на страницу с пикселями: http://iconhandbook.co.uk/reference/chart/android/

Вот ссылка на страницу Google: http://developer.android.com/guide/practices/screens_support.html

я не знаю специфику вашего приложения, но отмечу две вещи, которые могут быть проблемы :

1) Размеры этих пикселей составляют оценки они не гарантируются. Реальные телефоны бывают всех форм и размеров с различными разрешениями экрана, поэтому трудно сделать действительно независимый пользовательский интерфейс. и только эти разные размеры не помогут. Поэтому ваш телефон может отличаться от вашего эмулятора.

2) Масштабирование должно быть (3:) 4: 6: 8: 12: 16. ((ldpi:) mdpi: hdpi: xhdpi: xxhdpi: xxxhdpi) (например: 32: 48: 72: 96: 180: 192, например, для базовой линии 48x48 (.75x:) 1x: 1,5x: 2x: 3x: 4x), поэтому для этого, в основном, это необходимо.

+0

Спасибо за ответ, но я немного смущен. Таким образом, масштабирование составляет 3: 4: 6: 8: 12: 16. Как значения 180 имеют смысл? Если масштабирование для этих двух значений равно 3x, значение 1x, не было бы 48 x 3 (144), где 180? Что-то просто кажется странным, потому что это совсем немного. – user3803709

+0

Это просто спецификации Google, а не сам хозяин –

+0

У кого-нибудь есть совет? DP одинаково для всех ресурсов, основанных на уравнении dp = px/(dpi/160), поэтому он должен выглядеть однородным во всех экранах да? – user3803709

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