使用了一个TextView

问题描述:

定制的嵌入式字体,所以我有一个具有TextView布局:使用了一个TextView

<TextView 
       android:id="@+id/textView1" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="GLASSES RX EXPIRATION DATE" 
       android:textAppearance="?android:attr/textAppearanceMedium" 
       android:textColor="@color/black" 
       android:typeface="monospace" /> 

我也有存储在我的assets/fonts/文件夹中的富利字体。我知道如何使用java设置字体,但是在xml布局中有没有办法将字体设置为我的嵌入式资源字体?

不,没有办法在默认设置normal,monospace,sansserif旁边的xml布局中设置自定义字体。你可以制作自己的TextView,这个自定义属性可以在xml中使用额外的字体,并使用它来代替正常的TextView类。

在标准形式中,您将无法做到这一点,但Luksprog提到了解决方法。您基本上需要

  1. 声明一个将用于指定字体类型的样式属性。
  2. 在assets/fonts文件夹中添加您的自定义字体。
  3. 在扩展TextView的构造函数中使用指定的字体类型来访问自定义字体。

这将使您能够使用自定义字体,而无需在您的应用程序中将其设置为java。这是一个tutorial