Android编程之分辨率处理相关代码段合集

时间:2022-10-21 12:31:10

本文实例讲述了Android编程之分辨率处理相关代码段。分享给大家供大家参考,具体如下:

1. 通常我们所说的屏幕分辨率如800x480、960x540等。这些分辨率是可以通过代码获取到的。手机屏幕分辨率计算:

?
1
2
3
4
5
6
7
8
9
// 计算手机屏幕分辨率
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:

?
1
2
3
4
public static int dip2px(Context context,float dpValue) {
  final float scale = context.getResources().getDisplayMetrics().density;
  return (int) (dpValue * scale + 0.5f);
}

3. 根据手机的分辨率从 px(像素) 的单位 转成为 dp:

?
1
2
3
4
public static int px2dip(Context context,float pxValue) {
  final float scale = context.getResources().getDisplayMetrics().density;
  return (int) (pxValue / scale + 0.5f) - 15;
}

希望本文所述对大家Android程序设计有所帮助。