Как мне конвертировать в DIP?
Какова формула для преобразования обычных пикселей в DIP?
Предполагая, что у меня есть документ Photoshop с дизайном, который был предназначен для Galaxy Tab (например), который составляет 600x1024 фактических пикселей.
Каково соотношение между теми и DIP? Мне неясно, как Android переводит это.
Я хочу использовать DIP (а не пиксели), чтобы его масштабирование выглядело "хорошо" на других устройствах, но моя главная задача - сделать его идеальным по пикселям в этом разрешении, и моя цель - измерить положение элемента в фотошопе и затем получите точный перевод того, каким должен быть DIP, чтобы он одинаково выкладывался на вкладке.
1 ответ
Их формула где-то в документах:
truePixels = DIPs * (device DPI / 160)
Ах, вот оно:
Плотно-независимый пиксель эквивалентен одному физическому пикселю на экране с разрешением 160 точек на дюйм, который является базовой плотностью, принятой системой для экрана "средней" плотности. Во время выполнения система прозрачно обрабатывает любое масштабирование единиц измерения dp по мере необходимости на основе фактической плотности используемого экрана. Преобразование единиц dp в пиксели экрана очень просто: px = dp * (dpi / 160). Например, на экране с разрешением 240 dpi 1 dp равен 1,5 физических пикселей. Вы должны всегда использовать dp-единицы при определении пользовательского интерфейса вашего приложения, чтобы обеспечить правильное отображение вашего пользовательского интерфейса на экранах с различной плотностью.
Взято отсюда.