我已经为分辨率为480x800的Pantech设备创建了以像素为单位的高度和宽度创建的应用程序。

我需要为G1设备转换高度和宽度。
我认为将其转换为dp可以解决问题,并为两个设备提供相同的解决方案。

有没有简单的方法可以将像素转换为dp?
有什么建议么?

最佳答案

Java代码:

// Converts 14 dip into its equivalent px
float dip = 14f;
Resources r = getResources();
float px = TypedValue.applyDimension(
    TypedValue.COMPLEX_UNIT_DIP,
    dip,
    r.getDisplayMetrics()
);
Kotlin代码:
 val dip = 14f
 val r: Resources = resources
 val px = TypedValue.applyDimension(
     TypedValue.COMPLEX_UNIT_DIP,
     dip,
     r.displayMetrics
 )

08-05 19:40