获取屏幕分辨率,即像素px:
public static Point getSizeScreen(Context ctx) {
WindowManager wm = (WindowManager)ctx.getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics dm = new DisplayMetrics();
wm.getDefaultDisplay().getMetrics(dm);
Point size = new Point();
size.x = dm.widthPixels;
size.y = dm.heightPixels;
return size;
}
获取屏幕密度,即1dp代表多少像素px:
/**
* 根据手机的分辨率从dp的单位转成px(像素)
* @param context
* @param dpValue
* @return
*/
public static int dip2px(Context context, float dpValue) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int)(dpValue * scale + 0.5f);
}