android dp和px之间进行转换

在xml布局文件中,我们既可以设置px,也可以设置dp(或者dip)。一般景象下,我们都邑选择应用dp,如许可以包管不合屏幕辨别率的机械上布局一致。然则在代码中,如何处理惩罚呢?很多控件的办法中都只供给了设置px的办法,例如setPadding,并没有供给设置dp的办法。这个时辰,若是须要设置dp的话,就要将dp转换成px了。


以下是一个应用类,便利进行px和dp之间的转换。

public class DensityUtil { 
 
  
 
     /**
 
      * 按照手机的辨别率从 dp 的单位 转成为 px(像素)
 
      */ 
 
     public static int dip2px(Context context, float dpValue) { 
 
         final float scale = context.getResources().getDisplayMetrics().density; 
 
         return (int) (dpValue * scale + 0.5f); 
 
     } 
 
  
 
     /**
 
      * 按照手机的辨别率从 px(像素) 的单位 转成为 dp
 
      */ 
 
     public static int px2dip(Context context, float pxValue) { 
 
         final float scale = context.getResources().getDisplayMetrics().density; 
 
         return (int) (pxValue / scale + 0.5f); 
 
     } 
 
 } 

 

你可能感兴趣的:(android dp和px之间进行转换)