您的位置:首页 > 移动开发

android App 禁止系统修改字体

2016-08-04 18:00 253 查看
最近遇到一个比较麻烦的bug,在一般android开发中,VIew字体的设置一直都是用的google推荐我们使用的sp,然而从android4.0起系统设置的”显示“提供设置字体大小的选项。好多老年人字体(特大号)设置直接会影响到所有sp为单位的字体适配,所以很多app在设置了系统字体后瞬间变得面目全非。

然而主流的app上并不会因为修改系统字体而发生应用内的字体变化。

有两种解决方案

1,将字体大小用dip或dp,这样字体就不会因为系统的修改而修改,但是会报黄线,毕竟google推荐使用sp,这种方法亲测可行,但不推荐

2.在activity的基类里重写getResources方法,将Configuration设置为默认,

@Override
public Resources getResources() {
Resources res = super.getResources();
Configuration config=new Configuration();
config.setToDefaults();
res.updateConfiguration(config,res.getDisplayMetrics() );
return res;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息