首页 > 移动平台 > 详细

Android 开发之修改 app 的字体大小(老人模式)

时间:2017-02-09 14:38:33      阅读:424      评论:0      收藏:0      [点我收藏+]

新的需求:

1. app 字体不随着系统字体大小变化

2. app 设置中有设置字体大小的开关,变大以后,整个 app 字体变大。

解决方案:(字体需要采用 dp 为单位,不能使用 sp 为单位)

解决1. 在 activity 和 fragment 的基类中,修改属性 fontScale 来实现的

1 private void initFontScale() { 
2   Configuration configuration = getResources().getConfiguration();
3   configuration.fontScale = (float) 1; 
4   //0.85 小, 1 标准大小, 1.15 大,1.3 超大 ,1.45 特大 
5   DisplayMetrics metrics = new DisplayMetrics();
6   getWindowManager().getDefaultDisplay().getMetrics(metrics); 
7   metrics.scaledDensity = configuration.fontScale * metrics.density;
8   getBaseContext().getResources().updateConfiguration(configuration, metrics); 
9 }

链接:http://www.jianshu.com/p/fafa8a0df5fb

 

解决2:通过设置获取到一个默认字体大小的倍数,然后保存到 SharePreference 中,然后重启 activity ,加载控件的时候,让控件默认字体大小乘以存储的倍数

链接:http://www.cnblogs.com/xqxacm/p/5779762.html

Android 开发之修改 app 的字体大小(老人模式)

原文:http://www.cnblogs.com/liyiran/p/6381998.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!