public class FontsOverride {    public static void setDefaultFont(Context context,String staticTypefaceFieldName, String fontAssetName) {        final Typeface regular = Typeface.createFromAsset(context.getAssets(),                fontAssetName);        replaceFont(staticTypefaceFieldName, regular);    }    protected static void replaceFont(String staticTypefaceFieldName,                                      final Typeface newTypeface) {        try {            final Field staticField = Typeface.class                    .getDeclaredField(staticTypefaceFieldName);            staticField.setAccessible(true);            staticField.set(null, newTypeface);        } catch (NoSuchFieldException e) {            e.printStackTrace();        } catch (IllegalAccessException e) {            e.printStackTrace();        }    }}



<resources>    <style name="AppBaseTheme" parent="android:Theme.Light">    </style>    <!-- Application theme. -->    <style name="AppTheme" parent="AppBaseTheme">        <item name="android:typeface">monospace</item>    </style></resources>



protected void onCreate(Bundle savedInstanceState) {        Log.e(TAG, "onCreate");        super.onCreate(savedInstanceState);        setContentView(R.layout.login_layout);        FontsOverride.setDefaultFont(this, "MONOSPACE", "FZLTXIHB.TTF");...}





主要思路是——通过设置theme将项目字体设为某种常见的字体(安卓本身自带的),然后通过一个函数将使用该字体的文字统一换成自定义的字体。


更多相关文章

  1. android中Button显示两行字体(spannable)
  2. TextView使用指定的TTF字库
  3. Android(安卓)APP修改全局字体
  4. Android字体大小设置自适应屏幕分辨率
  5. android使用艺术字,自定义字体
  6. Android8.0 Oreo新特性
  7. Android(安卓)Button按钮点击变换字体颜色
  8. Android字体设置,Roboto字体使用
  9. Android下在onCreate方法中获取TextView的高度

随机推荐

  1. Android实现局部图片滑动指引效果
  2. Android(安卓)实现真机远程调试并适应7寸
  3. Android 开源项目 eoe 社区 Android 客户
  4. 回望十年Android
  5. 【Android】联通性 -- USB从属模式
  6. 跑 Android(安卓)的 TouchPad 终于真正地
  7. 条码扫描二维码扫描——ZXing android 源
  8. (详解)Eclipse3.6搭建 Android 2.2 开发
  9. 亚马逊面向开发人员推出Android应用商店
  10. Android面试及开发忠告