В чем разница между fontFamily и typeFace в Android?

В чем разница между fontFamily и typeFace в Android? Конечно, я прочитал все описание на сайте разработчика Android, но мне пока не ясно.

Согласно общему значению двух слов, оно должно иметь одинаковое значение. Но в свойствах Android xml (textview...) он имеет оба свойства. Это меня очень смущает.

Насколько я знаю.... fontFamily и typeFace- это группа шрифтов с одинаковым внешним видом.(Roboto, Arial) Font является специфическим шрифтом fontFamily.(Roboto-18pt-Bold, Arial-10pt-Italic)

Что мне не хватает?

1 ответ

Чтобы найти ответ на свой вопрос, вы должны заглянуть в исходный код TextView, вы найдете его реализацию здесь

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

Теперь от реализации метода setTypefaceFromAttrs() похоже, если вы установили fontFamily приписывать тогда typeface Атрибут будет игнорироваться.

Также android:typeface атрибут добавлен на уровне API 1 и с его помощью вы можете установить следующие шрифты

- normal
- serif
- sans
- monospace

В то время как android:fontFamily атрибут добавлен на уровне API 16, и это поддерживает больше шрифтов из семейства шрифтов roboto, таких как -

- serif
- monospace
- sans-serif
- sans-serif-condensed
- serif-monospace
- sans-serif-smallcaps

Для получения дополнительной информации используйте ссылку ниже

Допустимые значения для Android:fontFamily и на что они отображаются?

Другие вопросы по тегам