为什么我的字体会在Android Studio Preview中显示,但无法在设备或模拟器上运行?

问题描述 投票:1回答:1

该应用程序与mindSdkVersion 23一起使用,并且针对SDdVersion 27。

我使用的设备是带有Android 7.0版本的三星Galaxy S6 Edge(API 24)。

我在Android Studio预览版中显示的所有字体都是正确的,但我不知道我做错了什么,字体在我的设备上不起作用。我尝试了很多想法。至少我读过它会附带一个额外的android库。但这并没有解决我的问题。

有没有人有想法?这对我来说非常重要。我烦了。

谢谢你的帮助!

我在drawable文件夹中的“fonts”文件夹中创建了自己的字体系列:

copperplate.xml:

<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <!--Copperplate Medium-->
    <font
        android:font="@font/copperplate_medium"
        android:fontStyle="normal"
        android:fontWeight="400"

        app:font="@font/copperplate_medium"
        app:fontStyle="normal"
        app:fontWeight="400" />

</font-family>

我在这种情况下使用的“copperplate_medium”也放在fonts文件夹中。它的“copperplate_medium.otf”

layout.xml:

  <TextView
       android:id="@+id/title"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_centerHorizontal="true"
       android:layout_marginTop="180dp"
       android:text="@string/title"
       android:fontFamily="@font/copperplate_medium"
       app:fontFamily="@font/copperplate_medium" 
       android:textColor="@color/white"
       android:textSize="30sp />
android android-layout fonts android-emulator
1个回答
0
投票

看起来您已经创建了更改字体属性的copperplate.xml,但仍然在布局中引用原始文件android:fontFamily="@font/copperplate_medium"。请务必仔细检查您是否引用了正确的文件

src/main/res/font/copperplate.xml
src/main/res/font/copperplate_medium.otf

<TextView
       ...
       android:fontFamily="@font/copperplate"
       />
© www.soinside.com 2019 - 2024. All rights reserved.