android中fontFamily和typeFace有什么区别?

myo*_*dpa 14 android

android中fontFamily和typeFace有什么区别?当然,我阅读了android开发者网站上的所有描述,但我还不清楚.

根据两个词的一般含义,它应该是相同的含义.但是在android xml属性(textview ...)中,它有两个属性.这让我非常困惑.

据我所知.... fontFamily和typeFace是一组相同的字体.(Roboto,Arial)字体是fontFamily的特定字体.(Roboto-18pt-Bold,Arial-10pt-Italic)

我错过了什么?

shi*_*vam 13

要找到问题的答案,您必须查看TextView的源代码,您将在此处找到它的实现

https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/core/java/android/widget/TextView.java

现在从方法的实现setTypefaceFromAttrs()看来,如果你有set fontFamily属性那么typeface属性将被忽略.

此外,android:typefaceapi级别1中添加了属性,使用此属性可以设置以下字体

- normal
- serif
- sans
- monospace
Run Code Online (Sandbox Code Playgroud)

虽然android:fontFamily属性是在api级别16中添加的,但这支持更多来自roboto字体系列的字体,如 -

- serif
- monospace
- sans-serif
- sans-serif-condensed
- serif-monospace
- sans-serif-smallcaps
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请使用以下链接

android:fontFamily的有效值以及它们映射到的内容?