Android 8.0(API 级别 26)引入了“XML 中的字体”这项新功能,
可以在 res/font/ 文件夹中添加 font 文件。
要访问字体资源,请使用 @font/myfont 或 R.font.myfont。

官网介绍

https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml?hl=zh-cn

使用流程

1. 创建font 资源目录

在res 下创建以个font 目录

android ttf字体使用.PNG

2. 添加字体文件 (.ttf 文件)

Dancing Script 字体下载: https://fonts.google.com/specimen/Dancing+Script
下载解压后,我们使用:DancingScript-Regular.ttf / DancingScript-Bold.ttf

注意文件名只能是a-z, 0-9以及下划线_, 即改成 dancingscript_regular.ttf
否则AS 会报错:
‘D’ is not a valid file-based resource name character: File-based resource names must contain only lowercase a-z, 0-9, or underscore

添加后,如上图所示
并且会自动生成: R.font.dancingscript_regular

3. 创建字体组 (font-family)

dance_font.xml

<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android"><fontandroid:fontStyle="normal"android:fontWeight="400"android:font="@font/dancingscript_regular" /><!--  fontStyle 只有 normal 和  italic(斜体)两种。这里的dancingscript_bold并非斜体,仅做演示 --><fontandroid:fontStyle="italic"android:fontWeight="400"android:font="@font/dancingscript_bold" /></font-family>

4. 布局文件中使用字体

    <TextViewandroid:id="@+id/textView2"//...android:text="使用dancing regular: This is for a text view"android:fontFamily="@font/dancingscript_regular"/><TextViewandroid:id="@+id/textView"//...android:text="使用dancing bold: This is for a text view"android:fontFamily="@font/dancingscript_bold"/>

此外,也可以通过自定义 styles.xml 中添加,然后使用

<?xml version="1.0" encoding="utf-8"?>
<resources><style name="customfontstyle" parent="@style/TextAppearance.AppCompat.Small"><item name="android:fontFamily">@font/dancingscript_regular</item></style>
</resources>

也可以通过在代码中使用字体, 例如

val typeface = resources.getFont(R.font.dancingscript_regular)
textView.typeface = typeface

5.效果图

dancing 字体效果图.PNG

Android UI 字体库(.ttf文件)的使用 -- xml方式相关推荐

  1. android 字体编程,Android编程之Calligraphy:Android 自定义字体库

    Calligraphy是android 自定义字体库 添加依赖 Download from Maven Central (.jar) OR Java dependencies { compile 'u ...

  2. android手机字体库相关问题深入剖析

    hi,all:    问题一.android系统支持什么字体库?    1.Android系统默认支持三类字体家族,分别为:"serif", "sans-serif&qu ...

  3. android app字体库,Uni-app使用字体库,在浏览器正常,但是在Android手机,调不到字体库,如何修改呢?...

    使用字体库,在浏览器正常,但是在Android手机,调不到字体库,如何修改呢? 字体库引用代码 @import './common/uni.css'; @font-face { font-family ...

  4. android UI开源库

    . ActionBarSherlock ActionBarSherlock是一个独立的Android设计库,可以让Android 2.x的系统也能使用ActionBar.此 外,ActionBarSh ...

  5. html字体库otf文件使用,在webpack中加载.otf字体文件的正确方法是什么?

    使用webpack时加载.otf字体文件的适当方式是什么?我曾多次尝试包括在我的webpack.config.js的规则,没有任何成功的基础上,很多例子我大致如下的线路看出:对于在webpack中加载 ...

  6. vue3.0引入字体样式ttf文件

    vue3.0之后,就把build目录隐藏掉了,所以想要配置配置webpack.base.conf.js 文件很麻烦. 具体做法是: 1.下载ttf字体包,把包放在common下 2.在common文件 ...

  7. react-native-web 阿里字体图标ttf文件不加载、乱码问题

    前言 本文基于 "react-native": "^0.70.0" "react-native-web": "^0.18.9&qu ...

  8. Android在线预览pdf文件的几种方式

    Android原生WebView不支持预览pdf文件,ios却可以,所以Android想要实现在线预览WebView要通过其他方法,有以下几种方法: 第一种方式: andorid原生自带的pdf管理库 ...

  9. Android 系统(72)---Android系统增加字体库及修改系统默认字体

    Android系统增加字体库及修改系统默认字体 阅读数:53 转载出处:https://blog.csdn.net/hsaekong/article/details/80305263 前言 最近项目上 ...

最新文章

  1. 基于easyui开发Web版Activiti流程定制器详解(五)——Draw2d详解(一)
  2. 遗传算法介绍和遗传算法的python实现
  3. 混合多云架构_混合多云每个人都应避免的3个陷阱(第1部分)
  4. NewCode----求数列的和
  5. 单位元转换万元怎么转_PDF转CAD怎么转换
  6. android xml黑体字_为 Android 换上任意喜欢的字体,你可以试试这个 Magisk 模块
  7. 统计订单:复选+全选+计算 的列表
  8. 网络设备巨头优倍快的客户数据遭泄露
  9. 路透:在美投资遇阻 中国科技资金转向以色列
  10. 第三百四十四节,Python分布式爬虫打造搜索引擎Scrapy精讲—craw母版l创建自动爬虫文件—以及 scrapy item loader机制...
  11. java中的UDP总结
  12. Fission for Mac(简易音频编辑软件)附注册码 v2.4.5激活版
  13. 幕布笔记按字母顺序导出(Python+Opml)
  14. pandas的自带数据集_Pandas教程:初学者入门必备,很全面,很详细!
  15. 小闹乎谈新手必备的撸猫手册
  16. windows.frames
  17. 打卡赠书 | 养成一个思考习惯
  18. 抖抖代码-爬取企查查企业信息
  19. linux 路由转发 ipv6,IPv6路由
  20. C/C++数据结构——公路村村通(Prim)

热门文章

  1. 安卓期末大作业——猫咪社区(源码+任务书)
  2. 微信无法连接到服务器的原因
  3. java中字符串和数字变量之间的转换方法
  4. 【无标题】非专业45岁,目标:Python对表格的识别转换。(1)基础识别
  5. 阿里云ACP普尔文考试注意事项
  6. 软件测试之测试用例颗粒度问题
  7. Python 魔法方法与属性
  8. python运行启动报错解决方法_pyspider启动错误解决(Python 3.7)
  9. 文本摘要相关论文汇总
  10. 早期中国文明内生性演进的内在逻辑阐释