Android 如何应用ttf图标字体库

  • 19

  • 20

  • 21

  • 22

import android.content.Context; import android.graphics.Typeface; import android.widget.TextView; /** * @author yuyh. * @date 2016/11/10. */ public class MDFontsUtils { public static Typeface OCTICONS; /** * Get octicons typeface * * @param context * @return octicons typeface */ public static Typeface getOcticons(final Context context) { if (OCTICONS == null) OCTICONS = getTypeface(context, "fonts/icomoon.ttf"); return OCTICONS; } /** * Set octicons typeface on given text view(s) * * @param textViews */ public static void setOcticons(final TextView... textViews) { if (textViews == null || textViews.length == 0) return; Typeface typeface = getOcticons(textViews[0].getContext()); for (TextView textView : textViews) textView.setTypeface(typeface); } /** * Get typeface with name * * @param context * @param name * @return typeface */ public static Typeface getTypeface(final Context context, final String name) { return Typeface.createFromAsset(context.getAssets(), name); } }

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

  • 11

  • 12

  • 13

  • 14

  • 15

  • 16

  • 17

  • 18

  • 19

  • 20

  • 21

  • 22

  • 23

  • 24

  • 25

  • 26

  • 27

  • 28

  • 29

  • 30

  • 31

  • 32

  • 33

  • 34

  • 35

  • 36

  • 37

  • 38

  • 39

  • 40

  • 41

  • 42

  • 43

  • 44

  • 45

  • 46

  • 47

  • 48

  • 49

9、图标对应是用TextView表示,而不是ImageView。如下:

<TextView android:id="@+id/tvMusic" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="10dp" android:textSize="16dp" /> <TextView android:id="@+id/tvHome" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="10dp" android:textSize="16dp" />

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

  • 11

  • 12

  • 13

在Java中应用字体。如下:

tvMusic = (TextView) findViewById(R.id.tvMusic); tvMusic.setText(MDFonts.MUSIC); tvHome = (TextView) findViewById(R.id.tvHome); tvHome.setText(MDFonts.HOME); // 应用字体 MDFontsUtils.setOcticons(tvMusic, tvHome);

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

run起来,大功告成!

这里写图片描述

10、你会发现,run起来图标颜色全是Android默认的灰色,那么怎么更改图标颜色呢?刚才说了,图标字体用的是TextView,实际上他跟中文英文字体没什么两样,他本质上还是文字。所以,TextView怎么设置字体大小、字体颜色,这里就对应怎么设置。如下:

tvHome.setTextColor(Color.RED); tvHome.setTextSize(50);

  • 1

  • 2

这里写图片描述

哈哈,没毛病!

当然,也可以把字体符号配置在string.xml

<string name="icon_home" translatable="false">\ue902</string>

  • 1
如何成为Android高级架构师!

架构师必须具备抽象思维和分析的能力,这是你进行系统分析和系统分解的基本素质。只有具备这样的能力,架构师才能看清系统的整体,掌控全局,这也是架构师大局观的形成基础。 你如何具备这种能力呢?一是来自于经验,二是来自于学习。

架构师不仅要具备在问题领域上的经验,也需要具备在软件工程领域内的经验。也就是说,架构师必须能够准确得理解需求,然后用软件工程的思想,把需求转化和分解成可用计算机语言实现的程度。经验的积累是需要一个时间过程的,这个过程谁也帮不了你,是需要你去经历的。

但是,如果你有意识地去培养,不断吸取前人的经验的话,还是可以缩短这个周期的。这也是我整理架构师进阶此系列的始动力之一。


成为Android架构师必备知识技能

对应导图的学习笔记(由阿里P8大牛手写,我负责整理成PDF笔记)

部分内容展示

《设计思想解读开源框架》

  • 目录
  • 热修复设计
  • 插件化框架设计

    《360°全方面性能优化》
  • 设计思想与代码质量优化
  • 程序性能优化

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

)]

  • 程序性能优化
    [外链图片转存中…(img-JVnIdb7p-1714393675677)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TTF字体是一种常见的TrueType字体,使用TTF(TrueType Font)字体技术来存储和呈现字形。这种字体由一组文件组成,包括字体定义文件(.ttf),字符映射文件(.cmap)和字体度量文件(.mtx)。TTF字体提供了丰富的字体样式和设计,使得文字在屏幕上或打印时都能呈现出清晰、平滑的效果。 CSDN,全称为中国软件开发网,是一个致力于为开发者、技术爱好者和创业者提供技术交流和资源共享平台的网站。CSDN上有海量的技术文章、论坛、博客和问答等资源,涵盖了各种编程语言、开发工具和技术领域。作为中国最大的IT社区,CSDN为广大开发者提供了一个学习、交流和分享的平台,使得他们能够方便地获取最新的技术资讯、解决问题和提升自己的技术能力。 在CSDN上,我们可以找到关于TTF字体的各种信息和资源。有很多开发者在CSDN上分享了自己对TTF字体的使用经验、技巧和实例代码。此外,CSDN上还有一些教程、视频和课程,帮助开发者了解和掌握TTF字体的基本原理和使用方法。通过在CSDN上搜索和浏览相关的文章和帖子,我们可以深入了解TTF字体的功能和特性,并进行实际的应用和开发。 总而言之,TTF字体是一种常用的字体技术,而CSDN为开发者提供了一个丰富的学习和交流平台。通过在CSDN上查找相关的文章和资源,我们可以更好地了解和应用TTF字体,提升自己的技术能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值