解决Android4.0 系统设置大号字体后布局错乱的问题

本文介绍了一种解决Android4.0系统中设置大号字体导致应用布局错乱的方法,通过调整fontScale值来确保应用界面的正常显示。

Android 4.0的时候,系统可以设置显示大号字体,但是这样一来,4.0一下的程序会出现布局错乱的问题,解决方法是修改fontscale值,代码如下:

Resources resource = getResources();
Configuration c =res.getConfiguration() ;
c.fontScale=1.0;

res.updateConfiguration(c, resource.getDisplayMetrics());

建议这个方法放在onResume方法中,这样可以确保程序启动后,退到后台再修改字体大小回到程序时,依然可以显示为我们指定的字体缩放大小。fontScale默认值为1,一般4.0设置字体为大号后该值会为1.3,该值参考:http://d.hatena.ne.jp/baroqueworksdev/20111029/1319879629 中的说明:

Font size : Small

10-29 08:49:51.004: I/ActivityManager(85): Config changed: {0.85 310mcc260mnc en_US layoutdir=0 sw320dp w320dp h480dp nrml port finger qwerty/v/v tball/v s.8}



Font size : Normal

10-29 08:48:50.174: I/ActivityManager(85): Config changed: {1.0 310mcc260mnc en_US layoutdir=0 sw320dp w320dp h480dp nrml port finger qwerty/v/v tball/v s.5}



Font size : Large

10-29 08:50:37.494: I/ActivityManager(85): Config changed: {1.15 310mcc260mnc en_US layoutdir=0 sw320dp w320dp h480dp nrml port finger qwerty/v/v tball/v s.9}



Font size : Extra large

10-29 08:51:19.314: I/ActivityManager(85): Config changed: {1.3 310mcc260mnc en_US layoutdir=0 sw320dp w320dp h480dp nrml port finger qwerty/v/v tball/v s.10}


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值