美文网首页
修改android手机设置中字体大小后导致页面布局混乱的问题

修改android手机设置中字体大小后导致页面布局混乱的问题

作者: 回望北斗之南 | 来源:发表于2017-03-30 14:56 被阅读0次

    在Android开发中针对字体大小的设置,虽然使用google推荐sp作为字体的单位,但是如果用户在系统设置的”显示“中修改了系统默认的字体大小。就会直接影响到所有sp为单位的字体适配,所以很多app在设置了系统字体后瞬间变得面目全非。

    针对该问题,大概有两种解决思路:1、不用sp作为系统字体的单位,改用dp,这在一些应用中也是很常见的(反编译QQ,貌似就是这样做的);2、重写getResource()方法,可以在activity基类(app中所有的activity都继承的一个activity类)中加上以下代码:

    @Override

    public Resources getResources() {

    Resources res =super.getResources();

    Configuration config =new Configuration();

    config.setToDefaults();

    res.updateConfiguration(config, res.getDisplayMetrics());

    returnres;

    }

    在这段代码中new了一个Configuration对象,并通过 setToDefaults()方法将其设为了系统默认的配置,此方法要想生效需调用Resources的updateConfiguration (Configurationconfig, DisplayMetrics metrics)方法。

    我一般使用第二种方法,这样的话,不论在设置中怎样更改字体大小都会显示我们定义的大小,不会导致屏幕布局混乱。

    相关文章

      网友评论

          本文标题:修改android手机设置中字体大小后导致页面布局混乱的问题

          本文链接:https://www.haomeiwen.com/subject/xwxpottx.html