为了应对不同风的品牌,需要配置不同的字体

一、自定义字体

1.android Typeface使用TTF字体文件设置字体

我们可以在程序中放入ttf字体文件,在程序中使用Typeface设置字体。
第一步,在assets目录下新建fonts目录,把ttf字体文件放到这。
第二步,程序中调用:

AssetManager mgr=getAssets();//得到AssetManager
Typeface tf=Typeface.createFromAsset(mgr, "fonts/ttf.ttf");//根据路径得到Typeface
tv=findViewById(R.id.textview);
tv.setTypeface(tf);//设置字体

二、android自带的设置

在xml文件中使用 android:textStyle=”bold” 可以将英文设置成粗体, 但是不能将中文设置成粗体,
将中文设置成粗体的方法是: 注意:部分字体中文无效,虽然不会报错,但是对中文无效。

TextView tv = (TextView)findViewById(R.id.TextView01);
tv.getPaint().setFakeBoldText(true);//中文仿“粗体”--使用TextPaint的仿“粗体”设置setFakeBoldText为true。

三、哪些属性可以影响字体

android:textStyle:

textStyle 主要用于设定一些字体的样式,它是对所有的字体都生效的。也就是说哪怕你替换了字体,依然可以使用 textStyle 来修饰它的样式。textStyle 本身支持的可选项有 normal|bold|italic,它们也非常的好理解,就是普通|粗体|斜体。
字体是不受 textStyle 影响的,这里影响的只有它的样式。

android:typeface

typeface 可以用于设置一些默认的字体,它可选的属性有 normal|sans|serif|monospace 等。normal 和 sans 的字体其实是一样的,serif 是一个带衬线的字体,而 nonospace 是等宽字体。
衬线其实就是字体边缘的那一点点小啾啾。

android:fontFamily

fontFamily 看着像是对 typeface 的一次加强,从它的可选项就能看出来,它更细致的区分了字体的样式。
fontFamily 的可选项还是很多的,这里就不一一列举了。不过需要注意,有一些字体的设置是有版本限制的。
例如:sans-serif-medium 是需要 Android 5.0 的版本才支持的。

需要注意的是,如果同时配置了 typeface 和 fontFamily ,将使用 fontFamily 配置的字体。(代码中可以看到相关逻辑)
而除了 typeface 和 fontFamily 会有冲突之外,它们俩都是可以配合 typeStyle 属性一起使用的,也就是说,这里配置的字体,都是可以再加粗或者加斜体。

修改字体的方式

如果你能说服你的设计师,接受系统字体的话,你可以在 Theme 中,去配置你需要的默认字体。

在 application 中,通过 android:theme 来配置一个 App 的主题。一般新创建的项目,都是 @style/AppTheme 。在其中追加关于字体的属性 android:fontFamily,它就可以完成对全局设置一个系统字体。当然你可以对一个单独的 TextView 配置一个特别的字体,都是可以接受的。

三、RoBoto

Android4.0后默认字体就使用了Roboto
相关表可以看这里

四、明白了如何设置,那应该设置啥呢

UI设计师给的字体方案 与代码设置之间是有差异的。她所规定的字体可能需要改多个属性。
具体到时候再分析吧

相关主题的,这个不错呀,有图文很详细,一目了然
Android 字体修改,所有的细节都在这里 | 开篇

android字体设置相关推荐

  1. android roboto字体下载,Android字体设置及Roboto字体使用方法

    本文实例讲述了Android字体设置及Roboto字体使用方法.分享给大家供大家参考.具体分析如下: 一.自定义字体 1.android Typeface使用TTF字体文件设置字体 我们可以在程序中放 ...

  2. android 字体设置ttf

    Android系统默认字体支持四种字体,分别为: noraml (普通字体,系统默认使用的字体) sans(非衬线字体) serif (衬线字体) monospace(等宽字体) 除此之外还可以使用其 ...

  3. android 字体变细,android 字体设置为中等粗细

    Android TextView设置字体粗细只有三种状态,textStyle取值只有bold.nomral.italic.客户需求是字体是medium粗细,只因ios是有medium属性,Androi ...

  4. android 字体设置方正,Android设置TextView的字体

    做项目的时候,需要使用到手写字体来让内容更加的美观.可是程序中默认使用的是系统的默认字体,怎么将TextView(或EditText)的字体设置成自己想要的字体呢?步骤如下: 下载字体文件(.ttf格 ...

  5. Android 字体设置

    Android 对中文字体支持很不好~~ 需要加入相应的字体库 (1)创建布局Layout //创建线性布局LinearLayout linearLayout=newLinearLayout(this ...

  6. h5 android 字体设置,解决因为手机设置字体大小导致h5页面在webview中变形的BUG

    解决因为手机设置字体大小导致h5页面在webview中变形的BUG 首先,我们做了一个H5页面,在各种手机浏览器中打开都没问题.我们采用了rem单位进行布局,通过JS来动态计算网页的视窗宽度,动态设置 ...

  7. android单线字体,Android字体设置

    // 自定义字体 custom = new TextView(this); //xx.ttf located at assets/fonts/ typeface = Typeface.createFr ...

  8. android 字体设置为楷体

    Typeface typeFace = Typeface.createFromFile("/mnt/sdcard/kt.ttf"); // .createFromAsset(get ...

  9. 【Android】字体设置 Text font

    通过android:typeface属性来设置字体: <TextViewandroid:id="@+id/textView15"android:layout_width=&q ...

  10. android studio 设置控制台字体大小

    今天,简单讲讲android studio 如何设置控制台字体大小. 这个其实很简单. 只要在android studio 这样设置:Settings->Editor->Color &am ...

最新文章

  1. 哪种编程语言又快又省电?有人对比了27种语言
  2. MAC OS 10.10.5虚拟机免费下载(可安装Xcode7)
  3. 来自damon的zencart二次开发教程-2.2登录模块分析
  4. HTMLCSS学习笔记(四)----浮动原理及清浮动
  5. Bumblebee微服务网关之并发限制
  6. android如何建立全局变量,如何在Android中声明全局变量?
  7. Flask笔记-使用Cookie及简单加密判断是否为登录用户
  8. Mr.J--简单页面制作
  9. 目标检测综述——两阶段检测器
  10. 解决终端SSH连接服务器一段时间不操作之后卡死的问题
  11. oracle的启动与关闭原理-数据路的分阶段启动
  12. VS2012下载网址
  13. ubuntu22.04无法打开网易云音乐APP
  14. Java实现阿拉伯数字转换成汉字数字
  15. 原子化服务的官方解析来啦~
  16. Ruby gem的proxy代理设置方法
  17. 点云 3D 目标检测 - PointPillars(CVPR 2019)
  18. 【Practical】CSDN图片去除水印
  19. Datagrip数据库连接工具—新建folder操作
  20. 大学必考计算机软件cad,大学CAD考试题目「附答案」

热门文章

  1. I2S接口以及Verilog实现数据接收
  2. CE认证---EMC最新标准-EN55032
  3. EPS中编写第一个程序
  4. nvme分区选mbr还是guid_[Win] 最强大的磁盘分区工具 DiskGenius v5.1.1 中文专业破解版...
  5. 百度网盘资源转迅雷下载正确打开方式!
  6. html网页url伪静态,静态、动态、伪静态三种URL表形式优缺点介绍
  7. 基于SSM的个人健康管理系统
  8. 微信小程序下载Excel到本地
  9. 《现代操作系统(中文第四版)》课后习题答案 第一章 引论
  10. 蜂考数据结构c语言版答案