Android 设置交换机标签的自定义字体

Android 设置交换机标签的自定义字体,android,android-styles,android-fonts,android-switch,Android,Android Styles,Android Fonts,Android Switch,在和的帮助下,我已成功设置了应用程序范围的自定义字体。基本上,我制作了一种新的字体样式,并在我的AppTheme中引用了它: <style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar"> ... <item name="android:fontFamily">@font/custom_font</item> <item name="fontFamily"

在和的帮助下,我已成功设置了应用程序范围的自定义字体。基本上,我制作了一种新的字体样式,并在我的
AppTheme
中引用了它:

<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
    ...
    <item name="android:fontFamily">@font/custom_font</item>
    <item name="fontFamily">@font/custom_font</item> 
</style>

...
@字体/自定义字体
@字体/自定义字体
它正在工作,但不适用于开关元素标签。正如用户在链接答案中指出的:

这不会在任何地方设置字体。。。e、 g.如果你有这样的风格 派生自Base.TextAppearance.AppCompat,在那里不使用它

我不确定这是否是交换机没有自定义字体的原因

那么,如何将此自定义字体应用于切换元素呢


设置开关的字体如下:

switchObj.setSwitchTypeface(Typeface.createFromAsset(mContext.getAssets(), "custom_font.ttf"));

这对我来说同样适用于
Switch
,而不仅仅是
SwitchCompat
。如果你消除了这对
Switch
不起作用的暗示,我会投赞成票。