APP字体大小,不随系统的字体大小变化而变化的方法

解决Android7.0以上 APP字体大小,不随系统的字体大小变化而变化的方法

在activity基类(app中所有的activity都应该有继承于我们自己定义的一个BaseActivity类)中加上以下code:

@Override

public ResourcesgetResources() {

Resources res =super.getResources();

    Configuration newConfig =new Configuration();

    //控制字体缩放 1.0为默认

    newConfig.fontScale =1.0f;

    DisplayMetrics displayMetrics = res.getDisplayMetrics();

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {

//7.0以上系统手机 显示大小 对APP的影响

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {

if (displayMetrics.density < DisplayMetrics.DENSITY_DEVICE_STABLE / (float) DisplayMetrics.DENSITY_DEFAULT) {

displayMetrics.densityDpi = (int) (DisplayMetrics.DENSITY_DEVICE_STABLE *0.92);

            }else {

displayMetrics.densityDpi = DisplayMetrics.DENSITY_DEVICE_STABLE;

            }

newConfig.densityDpi = displayMetrics.densityDpi;

        }

createConfigurationContext(newConfig);

    }

res.updateConfiguration(newConfig, displayMetrics);

    return res;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容