代码与范例:
1 2 3 4 5 6 7 8 |
private static final float DIP = 16.0f; // 将dip转换为pixel,将pixel转换为dip只需将算式进行逆运算即可 final float scale = getContext().getResources().getDisplayMetrics().density; int pixel = (int) (DIP * scale + 0.5f); // 获取屏幕高度的像素值 getContext().getResources().getDisplayMetrics().heightPixels; |
说明:将像素值与Android的尺寸单位dp转换。dp/sp的意义基本相同,都是与屏幕密度无关的尺寸单位,只不过前者用于字体尺寸以外的场合,而后者用于指定字体尺寸。在不同情况下,dp和sp所表示的尺寸会有些不同,这部分内容将在之后补充。