自定义字体未在设备上显示

时间:2018-02-28 14:30:11

标签: android fonts

我正在尝试在此site上的“字体在XML”教程中添加自定义字体。我按照教程写了这封信并多次检查找到了我错过的东西,但我看不到它。我添加的字体是TTF文件。

在设计器中,我可以选择我的字体系列,TextView中的文本更改为我添加的自定义字体。但是,当我在设备上运行应用程序时,文本默认为常规字体。 Android Studio中包含的字体不会发生这种情况。

其他问题:当我尝试另一种自定义字体时,TextView中的文本更改为自定义字体,但文本本身(内容)也更改为某些乱码。这是否表示字体不好或其他什么?

sv_regular.xml

<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
    <font
        android:fontStyle="normal"
        android:fontWeight="400"
        android:font="@font/sv_font_regular" />

</font-family>

的TextView

<TextView
    android:id="@+id/toolbar_title"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:fontFamily="@font/sv_regular"
    android:text="@string/app_name" />

2 个答案:

答案 0 :(得分:-1)

您的字体是否完全支持文字的语言?当字体不支持某些字符,如西里尔字符时,会发生此问题。还有一个:尝试在sv_font_regular

中使用TextView
  

机器人:fontFamily中= “@字体/ sv_font_regular”

Example

答案 1 :(得分:-1)

您可以通过编程方式执行此操作

在资源文件夹中添加外部字体

<强> 1。转到(项目文件夹)

<强> 2。然后app&gt; src&gt; main

第3。将文件夹'assets&gt; fonts'创建到主文件夹中。

<强> 4。将'abc.ttf'放入fonts文件夹。

TextView tx = (TextView)findViewById(R.id.textview1);

Typeface custom_font = Typeface.createFromAsset(getAssets(),"fonts/abc.ttf");

tx.setTypeface(custom_font);