我正在使用attr創建一個選擇器可繪製爲我的項目,以便一旦我更改主題顏色,我不必在可繪製文件中進行任何更改。我使用下面庫:Android選擇器可繪製不能使用屬性
compile 'com.android.support:appcompat-v7:+'
compile 'com.android.support:cardview-v7:+'
compile 'com.android.support:design:22.2.0'
下面是繪製的源代碼:在相同的代碼
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="?attr/colorPrimary" android:state_enabled="true" android:state_window_focused="false"/>
<item android:drawable="?attr/colorPrimaryDark" android:state_pressed="true"/>
<item android:drawable="@android:color/darker_gray" android:state_enabled="false"/>
<item android:drawable="?attr/colorPrimary"/>
</selector>
,如果我在colors.xml文件,同樣繪製的作品定義的顏色替換屬性。
樣品繪製顏色:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/color_primary" android:state_enabled="true" android:state_window_focused="false"/>
<item android:drawable="@color/color_primary_dark" android:state_pressed="true"/>
<item android:drawable="@android:color/darker_gray" android:state_enabled="false"/>
<item android:drawable="@color/color_primary"/>
</selector>
提前感謝!
如何繪製可以使用顏色?你必須通過drawable而不是顏色 – Pankaj
android處理該部分本身..請參閱第二個drawable的代碼。有用。問題在於何時使用屬性。 – mudit
我想你必須使用類似[this](http://stackoverflow.com/a/6108156/2715073) – Pankaj