我正在嘗試更改自定義drawable資源中的按鈕的填充,並在選擇器中重新使用它。 更改繪製似乎不是問題,但應用程序始終使用不同的可繪製最高填充aviable:更改選擇器中的填充drawable
button_inactive.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape android:shape="rectangle" >
<solid android:color="#FF4d681f" />
</shape>
</item>
<item
android:bottom="2dp"
android:left="2dp"
android:right="2dp"
android:top="2dp">
<shape android:shape="rectangle" >
<solid android:color="#FFFFFFFF" />
<padding
android:bottom="5dp"
android:top="5dp" />
</shape>
</item>
button_active.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape android:shape="rectangle" >
<solid android:color="#FF4D681F" />
</shape>
</item>
<item
android:bottom="2dp"
android:left="2dp"
android:right="2dp"
android:top="2dp">
<shape android:shape="rectangle" >
<solid android:color="#FF8da32d" />
<padding
android:bottom="10dp"
android:top="10dp" />
</shape>
</item>
button_selector.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_pressed="false" android:drawable="@drawable/button_active"/>
<item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/button_active"/>
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/button_active"/>
<item android:drawable="@drawable/button_inactive"/>
的問題是,我的按鈕使用在所有國家10dp填充,其中包括「無效」狀態。
有沒有解決方案讓它只使用XML或者更好地編程自定義按鈕?
我試着用我的一個可繪製的按鈕。正常的沒有填充,我添加填充到按下的一個。即使在顯示正常窗口時,它也會使用按下的填充。我也遇到了與我使用的.png文件相同的問題。我做了比正常的大,但大小不變。這很糟糕。 – 2013-11-10 02:37:57
http://stackoverflow.com/a/19227057/1645319 – 2014-03-17 15:28:30