从API 16开始,Jellybean Roboto作为可用的字体系列推出。看什么"新"在Android 16中here。
在android:fontFamily="sans-serif"
TextView
的默认fontFamily
上指定TextView
(API 16+中的Roboto)?
是
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
相当于
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="sans-serif" />
来自Material design typography website:
&#34; Roboto和Noto是Android和Chrome上的标准字体。&#34;
来自Wiki,
&#34; Roboto是由Google开发的无衬线字体系列 其移动操作系统Android的系统字体。&#34;
我没有在文档中看到Android的默认fontFamily
是什么。见参考文献:
答案 0 :(得分:48)
d.android.com上没有关于字体系列名称的文档。但是,如果您查看AOSP,则会在android.graphics.*
中加载默认字体。 FontListParser从/system/etc/fonts.xml
(Android 5.0+)或/system/etc/system_fonts.xml
(Android 4.1)加载默认字体。默认字体加载在Typeface#init。
这两个XML文件有一些文档。第一种字体是默认字体。您可以从设备中提取/system/etc/fonts.xml。设备制造商或自定义ROM可能会更改默认系统字体。
fonts.xml (API 21 +)
注意:这是系统字体配置的较新(L)版本, 支持更丰富的体重选择。一些应用程序会期望更旧 版本,所以请保持system_fonts.xml和fallback_fonts.xml同步 任何更改,即使框架只会读取此文件。
所有带有ohutut名称的字体都会添加到默认列表中。选择字体 基于匹配:完整的BCP-47语言标签,包括脚本,然后只是 语言,最后是order(包含字形的第一个字体)。
外观顺序也是重量匹配的决胜局。这是 为什么Roboto的900个权重在700个权重之前 - 我们 当要求800重量时,更喜欢前者。大胆的跨度 有效地增加300重量,这确保900是大胆的 配合500重量,确保足够的对比度。
system_fonts.xml (API 16-20)
系统字体
此文件列出了默认情况下将用于所有支持的字形的字体系列。 每个条目都包含一个系列,该系列支持的各种名称,以及 最多四个字体文件。字体文件按其样式的顺序列出 支持:常规,粗体,斜体和粗体斜体。如果列出的样式少于四个,那么 列出的其他字体文件将支持没有相关字体文件的样式。
第一个系列也是默认字体,用于处理未指定的字体请求 特定的字体名称。
系统字体未处理的任何字形都会导致搜索后备字体。 默认的回退字体在文件/system/etc/fallback_fonts.xml中指定 是一个可选文件,可供供应商提供,以指定要使用的其他后备字体 在/vendor/etc/fallback_fonts.xml。
如果您解析fonts.xml文件,您可以找到哪个字体系列使用哪种字体(请参阅here):
╔════╦════════════════════════════╦═════════════════════════════╗
║ ║ FONT FAMILY ║ TTF FILE ║
╠════╬════════════════════════════╬═════════════════════════════╣
║ 1 ║ casual ║ ComingSoon.ttf ║
║ 2 ║ cursive ║ DancingScript-Regular.ttf ║
║ 3 ║ monospace ║ DroidSansMono.ttf ║
║ 4 ║ sans-serif ║ Roboto-Regular.ttf ║
║ 5 ║ sans-serif-black ║ Roboto-Black.ttf ║
║ 6 ║ sans-serif-condensed ║ RobotoCondensed-Regular.ttf ║
║ 7 ║ sans-serif-condensed-light ║ RobotoCondensed-Light.ttf ║
║ 8 ║ sans-serif-light ║ Roboto-Light.ttf ║
║ 9 ║ sans-serif-medium ║ Roboto-Medium.ttf ║
║ 10 ║ sans-serif-smallcaps ║ CarroisGothicSC-Regular.ttf ║
║ 11 ║ sans-serif-thin ║ Roboto-Thin.ttf ║
║ 12 ║ serif ║ NotoSerif-Regular.ttf ║
║ 13 ║ serif-monospace ║ CutiveMono.ttf ║
╚════╩════════════════════════════╩═════════════════════════════╝