整个应用中使用的自定义字体

时间:2013-10-14 13:10:58

标签: android fonts

因此,在Android中设置字体的方法有很多种。 我需要做的是将字体与custom font结合使用,从而设置entire app

经过一些研究后,我有两个选择。

  • 覆盖EditText并设置字体,在我的布局xml中使用此类。
  • 在styles.xml中为我的AppTheme添加字体。

现在我更喜欢最后一个选项,因为我在整个应用程序中使用相同的字体,所以这显然是我的最佳选择。 现在的问题是,在我的Assets/font/文件夹中我添加了我想要使用的字体,但我不能在我的样式中使用它。

<style name="AppTheme" parent="AppBaseTheme">
    <item name="android:typeface"> Here? </item>
</style>

如何将我的字体添加为字体。这可能吗?

2 个答案:

答案 0 :(得分:0)

试试这段代码:

    public class CustomTextView extends EditText {

public CustomTextView(Context context, AttributeSet attrs, int defStyle) {
    super(context, attrs, defStyle);
    if (!isInEditMode())
        init();

}

public CustomTextView(Context context, AttributeSet attrs) {
    super(context, attrs);
    if (!isInEditMode())
        init();

}

public CustomTextView(Context context) {
    super(context);
    if (!isInEditMode())
        init();
}

public void init() {
    Typeface tf = Typeface.createFromAsset(getContext().getAssets(), Constants.FONTPATH);
    setTypeface(tf);

}

  }

然后在XMLwith中使用;

     <pkgname.CustomTextView android:id="@+id/txt" android:layout_width="wrap_content" android:layout_height="wrap_content"  /> 

答案 1 :(得分:0)

据我所知,我们无法访问xml文件中的外部资产。