002.像素和dip之間的相互轉換
阿新 • • 發佈:2017-11-05
isp sta edi hdp ext comment 相互轉換 start splay
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
方法:
- // dip轉像素
- public int DipToPixels(Context context, int dip) {
- final float SCALE = context.getResources().getDisplayMetrics().density;
- float valueDips = dip;
- int valuePixels = (int) (valueDips * SCALE + 0.5f);
- return valuePixels;
- }
- // 像素轉dip
- public float PixelsToDip(Context context, int Pixels) {
- final float SCALE = context.getResources().getDisplayMetrics().density;
- float dips = Pixels / SCALE;
- return dips;
- }
002.像素和dip之間的相互轉換