我之前使用过Android studio 2.3版本,现在更新到3.0稳定版本和目标版本25到26。我将所有自定义字体保存在文件夹中Assets
我在我的 xml 中使用它,例如:
app:font="font_regular.ttf"
用
编译Sdk版本26
构建工具版本"26.0.2"
minSdkVersion 16
目标Sdk版本26
renderscriptTargetApi 26
当我尝试使用Assets文件夹中的自定义字体时,它在3.0之前工作正常,但现在它显示错误如下:
错误:(17, 19)不允许使用字符串类型(在值为"font_regular.ttf"的"font"处)。
任何建议
通过参考开发人员 Doc 获得了快速解决方案
Android 8.0(API 级别 26)引入了一项新功能,即 XML 中的字体,可让您将字体用作资源。您可以在 res/font/文件夹中添加字体文件,以将字体捆绑为资源。这些字体在 R 文件中编译,并在 Android Studio 中自动可用。您可以在新的资源类型字体的帮助下访问字体资源。例如,要访问字体资源,请使用 @font/myfont 或 R.font.myfont。
所以我把我所有的 fons 都移到了res
里面font
文件夹
现在我像这样使用它:
app:font="@font/font_regular"