Как добавить атрибут шрифта Family под Атрибуты в графическом макете Android Studio - PullRequest
3 голосов
/ 19 марта 2019

Я использую Android Studio для создания приложения Android. Я использую в качестве ОС Ubuntu 14.04. В моем приложении я хочу изменить шрифт, я выполняю следующий шаг:

  1. Щелкните правой кнопкой мыши в папке res и выберите «Создать»> «Каталог ресурсов Android».
  2. В списке Тип ресурса я выбираю шрифт и затем нажимаю ОК
  3. Я добавляю свои файлы шрифтов в папку шрифтов
  4. После этого в макете xml я установил атрибут fontFamily для файла шрифтов, к которому я хочу получить доступ, как показано ниже в компоненте textView android: fontFamily = "@ font / cairo_extralight"

После этого шрифт не изменяется, потому что мы должны изменить его также в атрибутах графического макета. Но когда я перехожу к атрибутам в графическом макете, я не нашел атрибут fontfamily в свойстве textAppearance , Я хочу знать, почему атрибут fontfamily отсутствует в списке свойств и как его добавить.

1 Ответ

1 голос
/ 19 марта 2019

Некоторые распространенные проблемы, которые вы должны проверить:

  • android:fontFamily работает только с API версии 16. В версиях Android ниже свойство не действует.
  • Поддержка использованияandroid:fontFamily с собственными шрифтами было добавлено в библиотеку поддержки v26 и Android Studio 3.0 (вместе с плагином Android Gradle версии 3.0).Если вы используете более старые версии любого из них, он не будет работать.
  • Если у вас есть пользовательский TextView , убедитесь, что вы расширили AppCompatTextView .В противном случае пользовательские шрифты не будут использоваться.
  • При использовании пользовательских представлений убедитесь, что атрибуты, тема и стиль распространены правильно (например, при переопределении конструкторов).
  • Не все виджеты поддерживаютandroid:FontFamily. TextView , EditText , Button и некоторые другие делают, но Checkbox и Switch не делают.Там вместо кода нужно использовать setTypeFace.
...