未解决的引用:Android Studio中的字体



我试图在android studio中为文本视图设置字体,但由于某些原因,我无法访问字体目录。

我得到未解决的引用:font

我做了什么

-右键单击res>创建新目录;新>Android资源目录>目录名称:font>资源类型:字体

-将我的字体放在该目录中,因此该目录读取-res/font/myfont.ttf

-在我的片段中,我试图访问类似的字体

var typeFace: Typeface? = ResourcesCompat.getFont(requireContext(), R.font.myfont.ttf)

错误显示未解决的引用:font

我试图重建这个项目,但仍然没有成功。

使用:

typeFace:字体?=ResourcesCompat.getFont(requireContext((,R.font.myfont(

不要添加.ttf扩展名。

公共静态Typeface getFont(上下文上下文,int id(

返回与特定资源ID关联的字体字体。

尝试

typeFace: Typeface? = ResourcesCompat.getFont(requireContext(), R.font.myfont)

仅供参考-阅读有关Fonts in XML的官方指南

Android8.0(API 26级(引入了一个新功能,即XML中的字体,它允许您将字体用作资源。您可以在res/font/文件夹中添加字体文件,将字体作为资源捆绑在一起。这些字体在您的R文件中编译,并在Android Studio中自动提供。您可以在新资源类型font的帮助下访问字体资源。例如,要访问字体资源,请使用@font/myfontR.font.myfont

注意

您可以直接调用自定义字体ttf/otf。使用createFromAsset

val font = Typeface.createFromAsset(requireContext().assets,"font/myfont.ttf")

问题在于:

  • ";R〃类导入的是框架资源">安卓。R";

  • 我不得不删除它并导入我的项目"R〃";com.myproject.project.R">

然后像这样调用

  • val typeFace: Typeface? = ResourcesCompat.getFont(requireContext(), R.font.poppings)

再次无错误。

最新更新