我注意到SwitchCompat的字体似乎并不随我在fontFamily字段中设置的内容而改变。我还尝试使用带有自定义fontFamily的样式(这在TextView上有效),甚至是switchTextAppearance字段。它确实适用于预览(我知道预览不是真正准确的),但当我尝试在我的测试设备上运行它时却没有效果。
以下是我的SwitchCompat:
如您所见,我只想更改它的字体。
编辑
尽管如此,仍然不起作用。
以下是我的SwitchCompat:
<android.support.v7.widget.SwitchCompat
style="@style/MyStyle.Body"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="@font/my_font_family"
android:text="Enable"
app:switchTextAppearance="@style/MyStyle.Body"/>
以下是我的样式:
<style name="MyStyle.Body" parent="Base.TextAppearance.AppCompat.Body1">
<item name="android:textSize">14sp</item>
<item name="android:fontFamily">@font/my_font_family</item>
<item name="android:textColor">@color/color_primary_text</item>
</style>
如您所见,我只想更改它的字体。
编辑
我已将样式更改为这样
<style name="MyStyle.Switch" parent="Widget.AppCompat.CompoundButton.Switch">
<item name="android:textSize">14sp</item>
<item name="android:textColor">@color/color_primary_text</item>
<item name="android:fontFamily">@font/my_font_family</item>
<item name="fontFamily">@font/my_font_family</item>
</style>
尽管如此,仍然不起作用。