当前位置: 代码迷 >> Android >> Android Chromium:成功地获取到用户自定义的系统默认字体设立
  详细解决方案

Android Chromium:成功地获取到用户自定义的系统默认字体设立

热度:41   发布时间:2016-04-28 02:34:07.0
Android Chromium:成功地获取到用户自定义的系统默认字体设置

这个事情的原理是这样的:Android系统官方是不支持修改系统默认字体的,所有能够修改的情况都是OEM产商修改了framework层的代码,同时集成了高权限的预安装应用服务。

怎么做的呢?

其实很简单:修改android.content.res.Configuration类,Configuration类保存系统级别影响所有的Activity View显示的设置。如果Configuration类有改变,则会自动重新启动所有的Activity。

比方说,可以加一个String fontPath或者Typeface typeface属性。(官方默认的只有fontSize)

添加的属性对于外部应用而言是不可见的,因为外部普通应用只能基于官方的Android SDK编译。解决方法是通过Java动态反射调用。

那么,外部应用初始启动时如何获取当前的Configuration对象实例呢?

很简单:Activity(Context) --> getResources()得到Resources对象 --> getConfiguration():OK。


  相关解决方案