2016-04-05 75 views
-3

我有一個開關,當啓用並檢查時,它的顏色是我的colorPrimary。禁用時更改開關顏色

我希望在檢查但禁用時具有相同的顏色,但我找不到一種方法來完成它。

我試過使用選擇器,但它改變了開關背景而不是開關本身。

如何更改開關顏色的切換?

謝謝。

回答

3

在styles.xml 1 - 使用此

<style name="SwitchStyle" parent="Theme.AppCompat.Light"> 
     <item name="colorControlActivated">@color/theme</item> 
     <item name="colorSwitchThumbNormal">@color/grey300</item> 
     <item name="android:colorForeground">@color/grey600</item> 
</style> 

,然後這爲交換機:

<android.support.v7.widget.SwitchCompat 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:theme="@style/SwitchStyle" /> 

2開關:

<Switch 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@drawable/selector.xml" /> 

selector.xml:

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/on" android:state_checked="true"/> 
    <item android:drawable="@drawable/off" android:state_checked="false"/> 
</selector> 
+0

謝謝,但它不工作... – Sharas

+0

我已更新我的帖子再次嘗試第一個解決方案,如果不工作嘗試第二個@Sharas –