通过应用程序的首选项更改整个Android应用程序的字体

时间:2012-04-03 17:07:19

标签: android fonts

在我的应用程序中,我为用户提供了更改整个应用程序字体的设置。 我想当用户从列表中选择一个时,整个应用程序将立即应用此字体。我已经搜索了许多与此问题相关的问题,但我找不到合适的解决方案。我该怎么做才能做到这一点?感谢所有帮助!

1 个答案:

答案 0 :(得分:0)

我现在无法找到解决方案。

我认为答案是

https://stackoverflow.com/a/9531442/621951

但是,我仍在调查寻找解决方案。

我发现代码可能会有所帮助。

private void overrideFonts(final Context context, final View v) {

  try {

    if (v instanceof ViewGroup) {

      ViewGroup vg = (ViewGroup) v;

         for (int i = 0; i < vg.getChildCount(); i++) {

         View child = vg.getChildAt(i);

         overrideFonts(context, child);

             }
    } else if (v instanceof TextView ) {

      ((TextView) v).setTypeface(Typeface.createFromAsset(context.getAssets(), "fonts/Vegur-R 0.602.otf"));

    }
   } catch (Exception e) {
  }
}