2015-09-24 4 views
1

У меня есть psd файлы для разработки android макеты. Как я могу сделать макет масштабируемым и pixel до pixel согласно заданному psd. Я могу использовать линейку, чтобы вычислить height и width объекта в psd, но как я могу масштабироваться в dp в Android xml. ?Как конвертировать пиксели в DP для макета для Android?

Любая помощь будет заметным

+1

Вот унифицированное руководство, чтобы понять дп пикс-зр превращающего http://stackoverflow.com/questions/2025282/difference-between-px-dp-dip-and-sp -in-android – Sergii

+0

, что вам нужно обратить внимание, так это то, что dp зависят от устройства d и с каждым другим устройством он будет выглядеть по-другому, даже если для всех них dp одинаково. –

+0

На самом деле я понимаю конверсию, но как я могу ее применить? Сначала вам нужно выяснить тип устройства (mdpi/xdpi/xhdpi), а затем преобразовать высоту и ширину (из psd в пиксель) и преобразовать его в тип устройства и применить его в макете –

ответ

0

Преобразование пикселей обратно дп и использовать его в XML files.To конвертировать пикселей дп вы можете сделать это с помощью кода или с помощью какой-то инструмент, как http://androidpixels.net/

Через код, который вы может сделать это с помощью этого:

float ht_px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 
ht, getResources().getDisplayMetrics()); 
+0

Я не знаю, что этот комментарий имеет смысл или сейчас, но что делать, если я уменьшаю масштаб и увеличиваю размер файла psd, потому что в этом случае у вас будет другой пиксель высоты и ширины. что я должен делать в этом случае? –

+0

, вы должны принять размер только тогда, когда файл находится в исходном размере и поместил его в xml..rest, все вещи ухаживают за платформой –

+0

У меня также такая же проблема. Поэтому я проверяю размер кнопки, заданной в psd, т.е. ' Пиксель. Затем я использую инструмент для преобразования значения для устройства xxhdpi, то есть nexus5. Значение, которое я получил, 33,3dp, который не масштабируется, подходит для экрана. Значение подходит для экрана или задано psd равно 50dp Что мне делать? –