Как передать семейство шрифтов в папке res/font
, например, @font/roboto_medium
, в качестве атрибута для пользовательского представления в Android в XML, а затем прочитать его в пользовательском представлении в Typeface
объект? Это необходимо для пользовательского графического рендеринга текста.
Например:
<MyCustomView android:fontFamily="@font/roboto_medium"/>
Затем внутри MyCustomView.kt:
override fun onCreateView(...) {
// parse android:fontFamily attribute into Typeface object
val typeface: Typeface = ???
}
Ни один из Typeface
функции, кажется, поддерживают это. Один из них принимает собственный шрифт внутри папки assets
, а другой принимает целое число шрифта ресурса, непосредственно встроенное в код Java / Kotlin, например R.font.roboto_medium
.