首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SwitchCompat字体系列不会更改

SwitchCompat字体系列不会更改
EN

Stack Overflow用户
提问于 2018-01-08 02:01:52
回答 2查看 871关注 0票数 7

我正在使用Android Studio,并且在我的主活动中有一个SwitchCompat小部件。它的默认字体系列是sans-serif-medium,我将其改为quicksand_light。我还有一些TextViews,每个字体系列的字体都设置为quicksand_light。在我的活动的xml文件的设计选项卡上,它显示了与TextViews一样具有quicksand_light字体系列的SwitchCompat,但是当我在我的手机或模拟器上运行它时,SwitchCompat的字体系列是sans-serif-medium。我需要做什么额外的事情来改变字体系列,或者这是一个bug,或者这只是我一个人的问题?

EN

回答 2

Stack Overflow用户

发布于 2018-01-25 04:32:20

我还没有深入研究为什么在XML语言中定义fontFamily属性时它不能正确工作,但是如果您设置字体programmatically.,IT就会工作

下面是一个使用数据绑定的示例。

添加以下数据绑定适配器:

代码语言:javascript
复制
@BindingAdapter("labelTypeface")
fun setLabelTypeface(view: SwitchCompat, @FontRes id: Int) {
    view.typeface = ResourcesCompat.getFont(view.context, id)
}

并在您的布局中使用它:

代码语言:javascript
复制
<android.support.v7.widget.SwitchCompat
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:labelTypeface="@{R.font.stratum}"
    ... />
票数 1
EN

Stack Overflow用户

发布于 2019-09-10 08:28:47

我能够在交换机的拇指(而不是标签)上设置字体系列的唯一方法是:

代码语言:javascript
复制
    my_switch.setSwitchTypeface(ResourcesCompat.getFont(context, R.font.my_font))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48140043

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档