将文本开/关颜色改为在Android中切换

3

我有一个自定义选择器用于拇指和轨道 切换

switch_thumb_selector.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/bt_rules_box_control" android:state_enabled="false" />
    <item android:drawable="@drawable/bt_rules_box_control" android:state_pressed="true" />
    <item android:drawable="@drawable/bt_rules_box_control" android:state_checked="true" />
    <item android:drawable="@drawable/bt_rules_box_control" />        
</selector>

switch_track_selector.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/bg_rules_box_control" android:state_enabled="false" />
    <item android:drawable="@drawable/bg_rules_box_control" android:state_pressed="true" />
    <item android:drawable="@drawable/bg_rules_box_control" android:state_checked="true" />
    <item android:drawable="@drawable/bg_rules_box_control" />    
</selector>

我希望获得这种类似 Switch 的结果,并放置文字 ON/OFF。

Switch

我的问题是如何在不改变拇指图像的情况下更改“ON / OFF”文本的颜色? “ON / OFF”文本的颜色为白色,拇指的图像颜色相同。这会混淆两种颜色。

在按钮被点击的事件中改变TextView的颜色。 - Burhanuddin Rashid
怎么做?@BurhanuddinRashid - Are0215
1个回答

3
您可以将文本颜色设置为颜色状态列表选择器。使用与之前相同的状态,但是将android:drawable替换为每个状态的android:color作为值。 颜色状态列表 请注意,此资源位于res/color而不是res/drawable中。

res/color/switch_text_selector.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:color="#00000000"  android:state_checked="true" />
    <item android:color="#FFFFFFFF"  />        
</selector>

能否通过列表选择器设置文本颜色“开/关”?我可以设置轨道和拇指状态,但是设置文本颜色开/关我不知道。 - Are0215
你可以使用android:state_checked,就像轨道和拇指可绘制对象一样。 - dangVarmit
请给我一个例子。 - Are0215

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接