public static int getWidth(Context context){ DisplayMetrics displayMetrics=new DisplayMetrics(); //获取windowManager WindowManager windowManager= (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); windowManager.getDefaultDisplay().getMetrics(displayMetrics); //获取的宽度的像素值 int width=displayMetrics.widthPixels; return width; } public static int getHeight(Context context){ DisplayMetrics displayMetrics=new DisplayMetrics(); //获取windowManager WindowManager windowManager= (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); windowManager.getDefaultDisplay().getMetrics(displayMetrics); //获取的高度的像素值 int width=displayMetrics.heightPixels; return width; } /** * dp转像素 * @param context * @param dp * @return */ public static int dp2Px(Context context,float dp) { DisplayMetrics displayMetrics=new DisplayMetrics(); //获取WindowManager WindowManager windowManager= (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); windowManager.getDefaultDisplay().getMetrics(displayMetrics); //缩放因子 density float density=displayMetrics.density; return (int) (density*dp+0.5f); } /** * 像素转dp * @param context * @param px * @return */ public static int px2Dp(Context context,float px) { DisplayMetrics displayMetrics=new DisplayMetrics(); WindowManager windowManager= (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); windowManager.getDefaultDisplay().getMetrics(displayMetrics); float density=displayMetrics.density;//缩放因子 return (int) (px / density + 0.5f); }
屏幕和尺寸单位
最新推荐文章于 2021-02-24 11:53:07 发布