/** * 给几大 {@link DisplayMetrics} 赋值 * * @param activity {@link Activity} * @param density {@link DisplayMetrics#density} * @param densityDpi {@link DisplayMetrics#densityDpi} * @param scaledDensity {@link DisplayMetrics#scaledDensity} * @param xdpi {@link DisplayMetrics#xdpi} */ private static void setDensity(Activity activity, float density, int densityDpi, float scaledDensity, float xdpi) { //兼容 MIUI DisplayMetrics activityDisplayMetricsOnMIUI = getMetricsOnMiui(activity.getResources()); DisplayMetrics appDisplayMetricsOnMIUI = getMetricsOnMiui(AutoSizeConfig.getInstance().getApplication().getResources()); if (activityDisplayMetricsOnMIUI != null) { setDensity(activityDisplayMetricsOnMIUI, density, densityDpi, scaledDensity, xdpi); } else { DisplayMetrics activityDisplayMetrics = activity.getResources().getDisplayMetrics(); setDensity(activityDisplayMetrics, density, densityDpi, scaledDensity, xdpi); } if (appDisplayMetricsOnMIUI != null) { setDensity(appDisplayMetricsOnMIUI, density, densityDpi, scaledDensity, xdpi); } else { DisplayMetrics appDisplayMetrics = AutoSizeConfig.getInstance().getApplication().getResources().getDisplayMetrics(); setDensity(appDisplayMetrics, density, densityDpi, scaledDensity, xdpi); } }