尝试在styles.xml中使用自定义字体时,Android资源链接失败
我正在尝试使用android O中添加的带有新android:fontFamily属性的自定义字体。虽然这在xml中有效:尝试在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: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,因此情况并非如此。我不敢相信我犯了如此愚蠢的错误,也无法发现它。非常感谢你!我真不敢相信我犯了这么愚蠢的错误却没发现。非常感谢你!