002.像素和dip之间的相互转换

Posted nextfailure

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了002.像素和dip之间的相互转换相关的知识,希望对你有一定的参考价值。

android不同屏幕之间像素和dip的转换比例是不一样的:

    2 px = 3 dip if dpi == 80(ldpi), 320x240 screen
    1 px = 1 dip if dpi == 160(mdpi), 480x320 screen
    3 px = 2 dip if dpi == 240(hdpi), 840x480

方法:

  1. // dip转像素  
  2. public int DipToPixels(Context context, int dip) {  
  3.     final float SCALE = context.getResources().getDisplayMetrics().density;  
  4.   
  5.     float valueDips = dip;  
  6.     int valuePixels = (int) (valueDips * SCALE + 0.5f);  
  7.   
  8.     return valuePixels;  
  9.   
  10. }  
  11.   
  12. // 像素转dip  
  13. public float PixelsToDip(Context context, int Pixels) {  
  14.     final float SCALE = context.getResources().getDisplayMetrics().density;  
  15.   
  16.     float dips = Pixels / SCALE;  
  17.   
  18.     return dips;  
  19.   
  20. }  

以上是关于002.像素和dip之间的相互转换的主要内容,如果未能解决你的问题,请参考以下文章

dpsp px之间的相互转化的工具类

Android 单位dp和px之间相互转换

dp与px的相互转化

rem、rm、px、vw之间的相互转换

android开发之dip,dp与px像素之间的转换工具,可能用的不多,但是有总比没有好吧。

经纬度坐标与地图容器像素坐标相互转换