在这个问题的答案中,用户列出了android:fontFamily12种变体的值(见下文).这些价值来自哪里?该文档android:fontFamily未在任何地方列出此信息(我在此处查看,此处).这些字符串在各个地方的Android styles.xml文件中列出,但是这些字符串如何映射回Roboto字体?
从android 4.1/4.2开始,可以使用以下Roboto字体系列:
Run Code Online (Sandbox Code Playgroud)android:fontFamily="sans-serif" // roboto regular android:fontFamily="sans-serif-light" // roboto light android:fontFamily="sans-serif-condensed" // roboto condensed android:fontFamily="sans-serif-thin" // roboto thin (android 4.2) android:fontFamily="sans-serif-medium" // roboto medium (android 5.0)与此相结合
Run Code Online (Sandbox Code Playgroud)android:textStyle="normal|bold|italic"可能有12种变体:
- 定期
- 斜体
- 胆大
- 加粗斜体
- 光
- 光斜体
- 瘦
- 薄斜体
- 经常凝聚
- 浓缩斜体
- 浓缩大胆
- 浓缩大胆的斜体
在styles.xml应用程序的文件中我正在处理有人将其列为字体系列,我很确定它是错误的:
<item name="android:fontFamily">Roboto-Regular.ttf</item>
我想正确设置我们的应用程序主题(包括正确使用fontFamily)并删除在我查看文件之前创建的某些样式中的所有冗余.
为textview设置自定义字体时,我只能选择普通,粗体或斜体:

在以下示例中,如何将样式设置为浅而不是粗体?
<TextViewWithCustomFont
...
android:textStyle="bold"/>
Run Code Online (Sandbox Code Playgroud)