android 禁止跟随系统字体,Android 应用全局字体调节或禁止随系统字体大小更改...
1.禁止跟随系统字体大小调节
在Application中复写getResources()方法
@Override
public Resources getResources() {//还原字体大小
Resources res = super.getResources();
Configuration configuration = res.getConfiguration();
if (configuration.fontScale != 1.0f) {
configuration.fontScale = 1.0f;
res.updateConfiguration(configuration, res.getDisplayMetrics());
}
return res;
}
2.应用全局字体大小调节
在Application中复写getResources()方法
@Override
public Resources getResources() {//还原字体大小
Resources res = super.getResources();
Configuration configuration = res.getConfiguration();
if (configuration.fontScale != fontScale) {//fontScale要缩放的比例
configuration.fontScale = fontScale;
res.updateConfiguration(configuration, res.getDisplayMetrics());
}
return res;
}
3.Android 8.0适配
Android 8.0上会发现这样修改字体的缩放比例是不起作用的,
需要在Activity中同样进行复写getResources()方法。
4.整个应用字体大小调节方案
在设置界面进行字体缩放比例调节,退出时关闭所有已打开的Activity,并重启主界面。
@Override
public void onBackPressed() {
saveFontScaleRate();
}
private void saveFontScaleRate() {
if (defaultFontScaleRate != fontScaleRate) {
new SpUtils(FontScaleActivity.this).putData(ICourtApplication.FONT_SCALE_RATE, fontScaleRate);
BaseApplication.setFontScale(fontScaleRate);
AppManager appManager = AppManager.getAppManager();
MainActivity activity = appManager.getActivity(MainActivity.class);
appManager.finishAllActivity(activity);
activity.recreate();
} else {
finish();
}
}
5.注意
所有想要缩放的控件,不只是TextView,任何控件,只需要将尺寸单位换成SP,
自然,不想要随字体调节改变的也只需将SP换成其他单位。
android 禁止跟随系统字体,Android 应用全局字体调节或禁止随系统字体大小更改...相关推荐
- android歌词跟随手势滑动,Android实现跟随手指拖动并自动贴边的View样式(实例demo)...
效果图 代码 /** * 根据手指拖动的当前位置,自动贴边的View */ public class DragView extends ImageView implements View.OnTouc ...
- 如何设置app字体跟随系统_Android 应用全局字体调节或禁止随系统字体大小更改...
禁止跟随系统字体大小调节 如果要像微信一样,所有字体都不允许随系统调节而发生大小变化,要怎么办呢?利用Android的Configuration类中的fontScale属性,其默认值为1,会随系统调节 ...
- Android App修改字体大小,且不随系统字体大小更改
在做混合开发时发现,无论是APP内的字体大小,还是前端的字体大小,都会随着系统字体大小发生变化.当遇到老人字体(特大号字体)时,有些页面的布局就乱掉了.而玩过游戏的都知道,所有游戏APP的字体都不会随 ...
- iOS和android h5字体差异,关于移动hybrid开发中H5页面的字体应与系统保持一致的问题...
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 0.问题来源 在移动hybrid开发,也就是说,部分页面会使用html+css+javascript技术来制作,例如个人 ...
- android自带中文字体,Android更换系统默认显示的字体使用自定义字体
序言 上一篇Android 自定义字体,更换系统默认显示的字体使用自定义字体有讲到怎样指定控件显示指定字体,怎样整个软件显示指定字体,怎样WebView加载指定字体,但是还留下一个怎样修改整个系统的默 ...
- 在Android中自定义捕获Application全局异常,可以替换掉系统的强制退出对话框(很有参考价值与实用价值)
在Android中自定义捕获Application全局异常,可以替换掉系统的强制退出对话框(很有参考价值与实用价值) 参考文章: (1)在Android中自定义捕获Application全局异常,可以 ...
- android实现b站弹幕,Android弹幕实现:基于B站弹幕开源系统(2)
?? Android弹幕实现:基于B站弹幕开源系统(2) 在附录1的基础上,模拟实现一种实际开发的应用场景:从网络中不间断的周期取弹幕数据,这些弹幕数据往往是批量的,然后把这些从网络中取到的批量数据逐 ...
- android最新发布系统,首款Android 7.0手机LG V20发布 KingRoot教你玩转新系统
9月7日,韩国手机品牌LG在美国旧金山正式发布了全新安卓旗舰机型LG V20,虽然之前曝光信息中主副双屏没有实现,但该机拥有顶级配置.延续可拆卸电池设计,搭配最顶尖的配置,还有双摄像头,LG V20依 ...
- android 英文语言设置字体,Android中通过typeface设置字体-Go语言中文社区
在网上跑图几个小时,终于总结完. 行吧行吧,发车-- 开发过程中,布局文件中指定仅限于系统自带的四种字体(android Studio 3.0.1),就如: 嫌丑都不喜欢?去下载字体包吧我是免费商用字 ...
最新文章
- 鸿蒙系统3.0演示,华为鸿蒙系统3.0-华为鸿蒙系统3.0官网申请地址预约 v1.0-优盘手机站...
- Ubuntu 13.10 安装Terminalx 后更改默认终端设置
- 硬件工程师笔试常见问题
- 738. 单调递增的数字(贪心算法)
- SqlServer中从字符串中获取项目指标方法charindex月substring结合
- HDU4267(2012长春网络赛)
- 支付宝后台如何查看自己的签约详情
- 电赛总结(二)——AD芯片总结之AD7715
- selenium--特殊元素定位
- Google安全团队对Android安全的认识
- UVA12542 LA6149 Prime Substring【筛选法+贪心】
- scala读写linux上的文件,一起学Scala 文件 I/O
- #华为云#听从你心,无问西东
- 【web前端】第二天-HTML标签(下)
- Mongodb安装教程
- 计算机WORD函数求乘积,Word表格函数运用:加减乘除、求和、求积超简单,大神都不一定会!...
- 水果忍者(数学 叉积)
- Excel数据透视表经典教程十《值的汇总及显示方式》
- android drawtext 方法,8.2.13 drawText方法:绘制字符串
- Java设计模式七大原则-单一职责原则