Android 字体资源

这篇具有很好参考价值的文章主要介绍了Android 字体资源。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。
专注于分享各领域原创系列文章 ,擅长java后端、移动开发、商业变现、人工智能等,希望大家多多支持。
未经允许不得转载

Android 字体资源,Android基础,android,字体,面试

一、导读

我们继续总结学习Android 基础知识,温故知新。

本文讲述字体相关知识。

二、概览

字体资源定义了可在应用中使用的自定义字体。字体可以是单独的字体文件或字体文件的集合,称为字体系列,并在 XML 中定义。

三、 XML 中的字体

Android 8.0(API 级别 26)引入了“XML 中的字体”这项新功能,可让您将字体用作资源。您可以在 res/font/ 文件夹中添加 font 文件,将字体捆绑为资源。

我们可以将字体当做一个资源直接使用,同图片一样,只是目录不一样,

res/font/filename.ttf (.ttf、.ttc、.otf 或 .xml)

有了字体文件后,还需要再定义一个xml文件来引用,做一个中转,

<?xml version="1.0" encoding="utf-8"?>
<font-family>
  <font
    android:font="@[package:]font/font_to_include"
    android:fontStyle=["normal" | "italic"]
    android:fontWeight="weight_value" />
</font-family>

然后就可以直接使用了,我们举个例子:

  1. res/font/filename.ttf
  2. 定义 res/font/lobster.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/lobster_regular" />
    <font
        android:fontStyle="italic"
        android:fontWeight="400"
        android:font="@font/lobster_italic" />
</font-family>
  1. 引用
<?xml version="1.0" encoding="utf-8"?>
<EditText
    android:fontFamily="@font/lobster"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Hello, World!" />

也可以通过代码之间引用

Typeface typeface = getResources().getFont(R.font.myfont);
textView.setTypeface(typeface);

四、 可下载字体

从 Android 8.0(API 级别 26)和 Android 支持库 26 开始,可以支持 API 从提供程序应用请求获取字体,而不是将文件绑定到应用或让应用下载字体。

字体提供程序是一个应用,可检索字体并将其缓存在本地,以便其他应用可以请求获取和共用字体。
Android 字体资源,Android基础,android,字体,面试

字体由外部提供。
eg:

  1. 在 res/values/ 中定义证书数组的 XML 文件
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="certs">
      <item>MIIEqDCCA5CgAwIBAgIJA071MA0GCSqGSIb3DQEBBAUAMIGUMQsww...</item>
    </string-array>
</resources>
  1. 在 res/font/lobster.xml 中定义字体来源的 XML 文件
<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android"
    android:fontProviderAuthority="com.example.fontprovider.authority"     定义字体请求的字体提供程序的授权
    android:fontProviderPackage="com.example.fontprovider"                 要用于请求的字体提供程序的软件包名称。此属性用于验证提供程序的身份
    android:fontProviderQuery="Lobster"                                    字体的字符串查询。
    android:fontProviderCerts="@array/certs">                              定义用于为此提供程序签名的证书的哈希集
</font-family>
  1. 在 res/layout/ 中应用

<?xml version="1.0" encoding="utf-8"?>
<EditText
    android:fontFamily="@font/lobster"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Hello, World!" />

字体

五、 推荐阅读

Java 专栏

SQL 专栏

数据结构与算法

Android学习专栏

未经允许不得转载

Android 字体资源,Android基础,android,字体,面试文章来源地址https://www.toymoban.com/news/detail-742908.html

到了这里,关于Android 字体资源的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android修行手册-基础优化系列图片篇,ios音视频面试内容

    图片款=(480/480)*400=400 占用内存为300*400*4=480000 那么它占用内存为什么是变化的? Android会先解析图片文件本身的数据格式,然后还原成Bitmap对象,Bitmap的大小就跟上面的计算方式相关联。 再举例1080*452的png图片,图片占用存储空间大小为56kb,内存如图: 上图一目了然,不

    2024年04月27日
    浏览(66)
  • webpack5基础--08_处理字体图标资源

    打开阿里巴巴矢量图标库 选择想要的图标添加到购物车,统一下载到本地 src/fonts/iconfont.ttf src/fonts/iconfont.woff src/fonts/iconfont.woff2 src/css/iconfont.css 注意字体文件路径需要修改 src/main.js public/index.html type: \\\"asset/resource\\\" 和 type: \\\"asset\\\" 的区别: type: \\\"asset/resource\\\" 相当于 file-loader , 将

    2024年03月10日
    浏览(91)
  • Android-高级-UI-进阶之路-(七)-SVG-基础使用-+-绘制中国地图,Android面试中常问的MMAP到底是啥东东

    iv.setImageDrawable(animatedVectorDrawable) val animatable = iv.drawable as Animatable animatable.start() } } 输入搜索动画 利用在线绘制 SVG 图标网站 制作搜索图标 可以自己随意捣鼓绘制,绘制好了之后点击视图-源代码,将 SVG 代码复制出来保存成 search_svg.xml 在线转换 svg2vector 点击空白或者直接将

    2024年04月25日
    浏览(50)
  • Android 分别使用Java和Kotlin给Textview设置第三方字体、APP全局字体、 Android X字体设置

    本文介绍Android实现全局设置自定义字体和局部设置自定义字体即单个TextView设置字体,同时也提供了一些优秀的三方字体框架,基本可以满足开发者对字体设置的全部要求。 使用自定义字体前后效果图 首先需要了解Android之assets 简而言之,你的图片、svg文件放在工程的res/d

    2024年02月07日
    浏览(49)
  • android 13.0 添加系统字体并且设置为默认字体

    在13.0系统定制化开发中,在产品定制中,有产品需求对于系统字体风格不太满意,所以想要更换系统的默认字体,对于系统字体的修改也是常有的功能,而系统默认也支持增加字体,所以就来添加楷体字体为系统字体,并替换为系统默认字体, 接下来就来分析下替换默认字

    2024年02月22日
    浏览(67)
  • Android字体、字重

    一 设置字体样式的四个属性 二 字体、黑体 三 字重 四 UI口中的“中黑体” 五 TextView的默认字体、字重 六 其他参考

    2024年02月12日
    浏览(33)
  • Android进阶之路 - 字体自适应

    开发中有很多场景需要进行自适应适配,但是关于这种字体自适应,我也是为数不多的几次使用,同时也简单分析了下源码,希望我们都有收获 很多时候控件的宽度是有限的,而要实现比较好看的UI效果,常见的处理方式应该有以下几种 默认执行多行显示 单行显示,不足部

    2024年02月08日
    浏览(43)
  • Android布局字体大小不根据用户设置字体大小变化而变化

    先获取用户设置字体配置 fontSize 正常是1 大的是1.2 小的是 0.9 不一定就是这个值 差不多就是这样的 然后设置字体大小,如果像设置16sp 即可

    2024年01月25日
    浏览(51)
  • Android设置本地字体文件ttf

    目录 前言 ①使用typeface 方式 一、创建加载字体实例 二、使用步骤 1.在Application中加载字体 2.在xml中使用 ②使用fontFamily 方式 1、在res/font下导入ttf文件  2、在xml中使用 总结    产品告诉UI设计设计图时要使用炫酷字体。因为Android不像网页项目可以使用浏览器本机的字体,

    2023年04月08日
    浏览(36)
  • Android Framework 全局替换系统字体

    基于Android 11 Android Framework 全局替换系统字体 将需要替换的字体资源放置frameworks/base/data/fonts/目录下。 将系统默认的Roboto字体替换为HarmonyOs字体。 frameworks/base/data/fonts/fonts.xml frameworks/base/data/fonts/Android.mk frameworks/base/data/fonts/fonts.mk 编译刷机验证。 frameworks/base/graphics/java/and

    2024年02月12日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包