@Override public Resources getResources() { // 字体大小不跟随系统 Resources res = super.getResources(); Configuration config = new Configuration(); config.setToDefaults(); res.updateConfiguration(config, res.getDisplayMetrics()); return res; }
原理其实很简单,在android中控制字体大小的是Configuration类中的fontScale属性,其默认值为1,会随系统调节字体大小而发生变化,我们强制让其等于默认值,就可以实现字体不随调节改变。 如果没有抽取的话,?那你就在每个Activity中去重写这个方法吧,或者,赶紧开始抽取你们的基类吧!