android 实现TextView字体不随系统字体设置变化

223 阅读1分钟

今天工作遇到一个需求,说是要设置textview的字体大小不随系统字体设置变化。于是我一通百度,找到了一个so easy的方法。

1、直接将字体大小的sp改成dp即可实现改需求。

我美滋滋的找来领导,跟他说搞好了,结果这货说 不行哦,字体要用sp,不能推荐dp。

 虽然内心os是这样子的,但还是乖乖去寻找既设置sp又能过固定大小的方法。

又是一通百度,找到啦。只需要重写系统的一个方法即可,代码如下,就能实现sp字体不随系统字体设置改变大小咯。

2、在相应的activity里面重写以下方法就ok了。

    /*** 重写 getResource 方法,防止系统字体影响*/
    @Overridepublic Resources getResources() {
    //禁止app字体大小跟随系统字体大小调节Resources resources = super.getResources();
    Configuration configuration = new Configuration();
    configuration.setToDefaults();
    resources.updateConfiguration(configuration, resources.getDisplayMetrics());
    return resources;
    }

以上两个设置textview字体固定的方法都是可以的哦,其实我更喜欢sp改成dp,多简单是不是。