我在Android Lollipop 5.0 Android Studio的选项菜单中使用了一个开关。 Switch On看起来像这样: Switch On Switch Off看起来像这样: Switch Off - 你看不到“O” - 它可能是白色关闭开关上的白色文字。如何更改文本的颜色(或至少更改开关颜色)? 这是我的xml:
<Switch android:id="@+id/switchRackOverflowToggle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:textOn="O"
android:textOff="R"
android:showText="true"
android:checked="false"/>
谢谢!
答案 0 :(得分:0)
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:color="@android:color/white"/>
<item android:state_checked="false" android:color="@android:color/black"/>
</selector>
和
switchButton.setTextColor(ContextCompat.getColorStateList(context, R.color.button_text_color));
答案 1 :(得分:0)
在进一步观察后,我找到了一种简单的方法来改变开关本身的颜色:http://www.materialdoc.com/switch/
<style name="MySwitch" parent="Theme.AppCompat.Light">
<!-- active thumb & track color (30% transparency) -->
<item name="colorControlActivated">@color/indigo</item>
<!-- inactive thumb color -->
<item name="colorSwitchThumbNormal">@color/pink</item>
<!-- inactive track color (30% transparency) -->
<item name="android:colorForeground">@color/grey</item>
</style>
然后为开关使用:
android:theme="@style/MySwitch"
现在我可以更清楚地看到我的文字叠加。