android字体设置
为了应对不同风的品牌,需要配置不同的字体
一、自定义字体
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字体设置相关推荐
- android roboto字体下载,Android字体设置及Roboto字体使用方法
本文实例讲述了Android字体设置及Roboto字体使用方法.分享给大家供大家参考.具体分析如下: 一.自定义字体 1.android Typeface使用TTF字体文件设置字体 我们可以在程序中放 ...
- android 字体设置ttf
Android系统默认字体支持四种字体,分别为: noraml (普通字体,系统默认使用的字体) sans(非衬线字体) serif (衬线字体) monospace(等宽字体) 除此之外还可以使用其 ...
- android 字体变细,android 字体设置为中等粗细
Android TextView设置字体粗细只有三种状态,textStyle取值只有bold.nomral.italic.客户需求是字体是medium粗细,只因ios是有medium属性,Androi ...
- android 字体设置方正,Android设置TextView的字体
做项目的时候,需要使用到手写字体来让内容更加的美观.可是程序中默认使用的是系统的默认字体,怎么将TextView(或EditText)的字体设置成自己想要的字体呢?步骤如下: 下载字体文件(.ttf格 ...
- Android 字体设置
Android 对中文字体支持很不好~~ 需要加入相应的字体库 (1)创建布局Layout //创建线性布局LinearLayout linearLayout=newLinearLayout(this ...
- h5 android 字体设置,解决因为手机设置字体大小导致h5页面在webview中变形的BUG
解决因为手机设置字体大小导致h5页面在webview中变形的BUG 首先,我们做了一个H5页面,在各种手机浏览器中打开都没问题.我们采用了rem单位进行布局,通过JS来动态计算网页的视窗宽度,动态设置 ...
- android单线字体,Android字体设置
// 自定义字体 custom = new TextView(this); //xx.ttf located at assets/fonts/ typeface = Typeface.createFr ...
- android 字体设置为楷体
Typeface typeFace = Typeface.createFromFile("/mnt/sdcard/kt.ttf"); // .createFromAsset(get ...
- 【Android】字体设置 Text font
通过android:typeface属性来设置字体: <TextViewandroid:id="@+id/textView15"android:layout_width=&q ...
- android studio 设置控制台字体大小
今天,简单讲讲android studio 如何设置控制台字体大小. 这个其实很简单. 只要在android studio 这样设置:Settings->Editor->Color &am ...
最新文章
- 哪种编程语言又快又省电?有人对比了27种语言
- MAC OS 10.10.5虚拟机免费下载(可安装Xcode7)
- 来自damon的zencart二次开发教程-2.2登录模块分析
- HTMLCSS学习笔记(四)----浮动原理及清浮动
- Bumblebee微服务网关之并发限制
- android如何建立全局变量,如何在Android中声明全局变量?
- Flask笔记-使用Cookie及简单加密判断是否为登录用户
- Mr.J--简单页面制作
- 目标检测综述——两阶段检测器
- 解决终端SSH连接服务器一段时间不操作之后卡死的问题
- oracle的启动与关闭原理-数据路的分阶段启动
- VS2012下载网址
- ubuntu22.04无法打开网易云音乐APP
- Java实现阿拉伯数字转换成汉字数字
- 原子化服务的官方解析来啦~
- Ruby gem的proxy代理设置方法
- 点云 3D 目标检测 - PointPillars(CVPR 2019)
- 【Practical】CSDN图片去除水印
- Datagrip数据库连接工具—新建folder操作
- 大学必考计算机软件cad,大学CAD考试题目「附答案」
热门文章
- I2S接口以及Verilog实现数据接收
- CE认证---EMC最新标准-EN55032
- EPS中编写第一个程序
- nvme分区选mbr还是guid_[Win] 最强大的磁盘分区工具 DiskGenius v5.1.1 中文专业破解版...
- 百度网盘资源转迅雷下载正确打开方式!
- html网页url伪静态,静态、动态、伪静态三种URL表形式优缺点介绍
- 基于SSM的个人健康管理系统
- 微信小程序下载Excel到本地
- 《现代操作系统(中文第四版)》课后习题答案 第一章 引论
- 蜂考数据结构c语言版答案