FB Litho: Как установить собственный шрифт для текста
У меня вопрос, как установить собственный шрифт для Text
компонент в структуре пользовательского интерфейса Facebook Litho?
Следующее мое Text
составная часть:
Text.create(componentContext)
.flexGrow(1f)
.verticalGravity(VerticalGravity.CENTER)
.text("MY APP")
.textSizeDip(25)
.textAlignment(Layout.Alignment.ALIGN_CENTER)
1 ответ
Решение
Чтобы использовать typeface
реквизит, вы должны сначала получить Typeface
объект, что значительно проще, если вы можете использовать Support Library v26, которая вводит шрифты в XML... это довольно просто сделать из ComponentContext
даже внутри вашего onCreateLayout
метод (хотя, вероятно, вы можете кэшировать Typeface
):
Text.create(c)
.typeface(ResourcesCompat.getFont(
c.getApplicationContext, R.font.my_cool_font)
.text("Check out my cool font")
.build()
Также есть Typeface.Builder
класс доступен, если у вас нет доступа к Support v26, которая дает вам несколько вариантов того, как указать нужный шрифт.