欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Android使用TypeFace设置TextView的文字字体

程序员文章站 2022-09-05 12:09:51
在android里面设置一个textview的文字颜色和文字大小,都很简单,也是一个常用的基本功能。但很少有设置文字字体的,今天要分享的是通过typeface去设置textview的文字字体,布局里面...

在android里面设置一个textview的文字颜色和文字大小,都很简单,也是一个常用的基本功能。但很少有设置文字字体的,今天要分享的是通过typeface去设置textview的文字字体,布局里面有两个button,总共包含两个小功能:换字体和变大。

功能的核心部分主要是两点:

创建assets外部资源文件夹,将ttf格式的字体文件放在该目录下

通过typeface类的createfromasset方法,让textview通过settypeface来改变字体

完整源码如下:

1、主activity,注意细看代码中的注释:

字体文件的存放目录结构如下(ttf字体文件既可以直接放在assets目录,也可以在assets下新建一层目录,比如我建了一层 fonts目录):

Android使用TypeFace设置TextView的文字字体

2、布局文件change_textview_font.xml

3、效果图如下(先点击变大、再更换字体):

Android使用TypeFace设置TextView的文字字体

关于android的字体,有以下两点要注意:

  • 字体文件必须是ttf(true type font)格式,否则,即使程序编译时不出错,在运行时也会发生无法更改字体的情况
  • 目前android在支持字体文件时还有些问题,即使用了不支持的字体,android也不会发生错误,而是以默认字体 droid sans 替换。所以大家如果遇到使用外部字体却发现没变化时,问题就出在android不支持该字体,而非程序错误

本功能里面使用了外部字体,也可以通过调用typeface的静态方法defaultfromstyle,使用原生字体,它有以下常量,都是int类型:

  • bold
  • bold_italic
  • default
  • default_bold
  • italic
  • monospace
  • normal
  • sans_serif
  • serif

大家有兴趣可以自己测试下这些字体对应的效果。

以上就是android使用typeface设置textview的文字字体的详细内容,更多关于android 设置字体的资料请关注其它相关文章!