Я пытаюсь использовать пользовательские шрифты с новым атрибутом "android: fontFamily", добавленным в Android O. Хотя это работает fin в xml:
android:fontFamily="@font/sf_pro_text_semibold"
, используя ту же конструкцию в styles.xml, как это:
<item name="android:fontFamily">@font/sf_pro_text_semibold"</item>
приводит к следующей ошибке сборки:
Execution failed for task ':app:processDebugResources'.
Ошибка привязки ресурса Android C: \ Users \ anro.gradle \ caches \ transforms-2 \ files-2.1\ 4125ed89f50d00591f7f19265a14b826 \ res \ values \ values.xml: AAPT: ошибка: шрифт ресурса / sf_pro_text_semibold "(он же com.example.fonttesting: font / sf_pro_text_semibold") не найден.
* 1012это должно работать, но это не так.Я предполагаю, что проблема в файле 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?