Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试在styles.xml中使用自定义字体时,Android资源链接失败_Android_Android Gradle Plugin - Fatal编程技术网

尝试在styles.xml中使用自定义字体时,Android资源链接失败

尝试在styles.xml中使用自定义字体时,Android资源链接失败,android,android-gradle-plugin,Android,Android Gradle Plugin,我正在尝试使用android O中添加的带有新android:fontFamily属性的自定义字体。虽然这在xml中有效: android:fontFamily="@font/sf_pro_text_semibold" 在styles.xml中使用相同的构造,如下所示: <item name="android:fontFamily">@font/sf_pro_text_semibold"</item> Android资源链接失败 C:\Users\anro.gradl

我正在尝试使用android O中添加的带有新android:fontFamily属性的自定义字体。虽然这在xml中有效:

android:fontFamily="@font/sf_pro_text_semibold"
在styles.xml中使用相同的构造,如下所示:

<item name="android:fontFamily">@font/sf_pro_text_semibold"</item>
Android资源链接失败 C:\Users\anro.gradle\caches\transforms-2\files-2.1\4125ed89f50d00591f7f19265a14b826\res\values\values.xml:AAPT:error:resource font/sf\u pro\u text\u semibold又名com.example.font测试:找不到font/sf\u pro\u text\u semibold

很多教程都说它应该可以工作,但事实并非如此。我想问题出在build.gradle文件中,但我甚至不知道如何让它工作,降级到较旧的支持库版本不是一个好的解决方案。这是我的build.gradle文件:

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'

android {
    compileSdkVersion 28
    buildToolsVersion '28.0.3'
    defaultConfig {
        applicationId "com.example.fonttesting"
        minSdkVersion 23
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.core:core-ktx:1.0.2'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
}
那么,有人知道如何使styles.xml中的自定义字体与androidx一起工作吗

AAPT:错误:资源字体/sf_pro_text_semibold aka com.example.fonttesting:找不到字体/sf_pro_text_semibold

有一个输入错误:

删除字符:

而不是

<item name="android:fontFamily">@font/sf_pro_text_semibold"</item>
AAPT:错误:资源字体/sf_pro_text_semibold aka com.example.fonttesting:找不到字体/sf_pro_text_semibold

有一个输入错误:

删除字符:

而不是

<item name="android:fontFamily">@font/sf_pro_text_semibold"</item>

我也有类似的问题,我的问题在风格上得到了扩展

<item name="android:fontFamily">@font/muli.ttf</item>
<item name="fontFamily">@font/muli.ttf</item>
移除扩展后,它对我有效

<item name="android:fontFamily">@font/muli</item>
<item name="fontFamily">@font/muli</item>

我也有类似的问题,我的问题在风格上得到了扩展

<item name="android:fontFamily">@font/muli.ttf</item>
<item name="fontFamily">@font/muli.ttf</item>
移除扩展后,它对我有效

<item name="android:fontFamily">@font/muli</item>
<item name="fontFamily">@font/muli</item>

你能在CompileSdkVersion buildToolsVersion'28.0.3'下添加这一行吗?我已经尝试过了,但又出现了相同的错误。可能是你在混淆android.support和androidx。有时,这种情况下会出现AAPT错误。++此项是否具有fontFamily属性?@Blasanka,我在任何地方都不使用android.support,因此情况并非如此。您是否可以在CompileSdkVersion buildToolsVersion'28.0.3'下添加这一行?我尝试过这一点,但再次出现相同的错误。可能是您正在使用android.support和androidx。有时,这种情况下会出现AAPT错误。++此项是否具有fontFamily属性?@Blasanka,我在任何地方都不使用android.support,因此情况并非如此。我不敢相信我犯了如此愚蠢的错误,也无法发现它。非常感谢你!我真不敢相信我犯了这么愚蠢的错误却没发现。非常感谢你!