android中使用xml的新自定义字体方法
随着android发布其O预览版,添加了一个新功能,称为xml字体。这很容易实现,但我没有什么疑问 首先让我添加一个最佳方法android中使用xml的新自定义字体方法,android,xml,android-studio,fonts,custom-font,Android,Xml,Android Studio,Fonts,Custom Font,随着android发布其O预览版,添加了一个新功能,称为xml字体。这很容易实现,但我没有什么疑问 首先让我添加一个最佳方法 1.)右键单击res文件夹,进入New>Android资源目录。新的 资源目录窗口出现。 2.)在资源类型列表中,选择font,然后单击确定。 3.在字体文件夹中添加字体文件。下面的文件夹结构生成R.font.dancing\u脚本、R.font.la\u la和R.font.ba\u ba。 4.双击字体文件以在编辑器中预览文件的字体 接下来,我们必须创建一个字体族 1
1.)右键单击res文件夹,进入New>Android资源目录。新的
资源目录窗口出现。
2.)在资源类型列表中,选择font,然后单击确定。
3.在字体文件夹中添加字体文件。下面的文件夹结构生成R.font.dancing\u脚本、R.font.la\u la和R.font.ba\u ba。
4.双击字体文件以在编辑器中预览文件的字体 接下来,我们必须创建一个字体族 1.)右键单击字体文件夹并转到新建>字体资源文件。此时会出现“新建资源文件”窗口。
2.)输入文件名,然后单击确定。新的字体资源XML将在编辑器中打开。
3.)在字体标记元素中包含每个字体文件、样式和权重属性。以下XML说明了如何在字体资源XML中添加与字体相关的属性:
<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
<font
android:fontStyle="normal"
android:fontWeight="400"
android:font="@font/hey_regular" />
<font
android:fontStyle="italic"
android:fontWeight="400"
android:font="@font/hey_bababa" />
</font-family>
向文本视图添加字体:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
**android:fontFamily="@font/ba_ba"**/>
从文档来看,所有步骤都是正确的。我的问题是:
1.)这在android棒棒糖或棉花糖中是否有效
2.)实现这些功能是否需要任何支持库
3.)它将支持什么类型的字体扩展,如.ttf.otf
请给我一个最好的解释。1。)这在android棒棒糖或棉花糖中能起作用吗 答:它的工作也为较低版本(根据我的研究) 2.)实现这些功能是否需要任何支持库 答:无需支持Lib,只需更新sdk(Android O) 3.)它将支持什么类型的字体扩展,如.ttf.otf 答:是的,它支持.ttf、.otf字体文件 有关更多信息,请参见以下链接:
,您是否在早期的Android版本下成功运行了它?从我执行的测试来看,我只能在Android-O开发预览下运行它,并在模拟器上运行。在6.0(API 23)和7.1(API 25)下,将
android:fontFamily
属性设置为资源id(如@font/lobster
)没有效果。我没有尝试过,但基于android开发者演示视频,他们告诉我完全支持(视频点击上面的链接android-O预览视频)。我将尝试更新我的答案我已经尝试过牛轧糖和android:fontFamily,但不支持getResources().getFont()。如何在不创建字体的情况下动态获取字体?@tasneem有趣的是,您使用的Android Studio、Android插件、Gradle和Android SDK构建工具的版本是什么?@ra3o.ra3看起来并不取决于Gradle版本或Android Studio。我用的是gradle alpha 5和cannery 6。.getFont()方法不受低于O的支持。