尺寸px和dp、sp之间的转换

mac2024-07-15  47

/** * 尺寸转换工具类 */ public class DimenUtils { public static int px2dp(Context context, float pxValue) { return (int) (pxValue / context.getResources().getDisplayMetrics().density + 0.5f); } public static int px2sp(Context context, float pxValue) { return (int) (pxValue / context.getResources().getDisplayMetrics().scaledDensity + 0.5f); } public static int dp2px(Context context, int dp) { //系统封装的方法实现了context.getResources().getDisplayMetrics().density*size return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, context.getResources().getDisplayMetrics()); } public static float sp2px(Context context, int size) { //系统封装的方法实现了context.getResources().getDisplayMetrics().scaledDensity*size return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, size, context.getResources().getDisplayMetrics()); } }
最新回复(0)