1.通常我们所说的屏幕分辨率如800x480、960x540等。这些分辨率是可以通过代码获取到的。手机屏幕分辨率计算:
// 计算手机屏幕分辨率
private void computeDisplayMetrics() {
// 手机屏幕分辨率为heightxwidth
DisplayMetrics dm = new DisplayMetrics();
this.getWindowManager().getDefaultDisplay().getMetrics(dm);
int width = dm.widthPixels;
int height = dm.heightPixels;
// 当前手机屏幕分辨率为width x height
}
2. 根据手机分辨率从dp转成px:
public static int dip2px(Context context,float dpValue) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (dpValue * scale + 0.5f);
}
3. 根据手机的分辨率从 px(像素) 的单位 转成为 dp:
public static int px2dip(Context context,float pxValue) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (pxValue / scale + 0.5f) - 15;
}