2016-04-19 9 views
0

私は、チェックボックスのボタンにカスタム描画可能に設定しています、
しかし、唯一のandroid:state_checked="true"android:state_checked="false"が動作するように見えます。
他の州は機能していません。カスタムボタン描画可能にstate_pressedチェックボックスまたはラジオボタンに動作していないstate_checked - アンドロイド

私は押された状態でカスタムドロアブルを設定できません。

これは私が使用していセレクタです:

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_checked="true" android:drawable="@drawable/radio_btn_selected" /> 
    <item android:state_checked="false" android:drawable="@drawable/radio_btn_normal" /> 
    <item android:state_pressed="true" android:drawable="@drawable/radio_btn_pressed" /> 
    <item android:state_focused="true" android:drawable="@drawable/radio_btn_pressed" /> 
    <item android:drawable="@drawable/radio_btn_normal"/> <!-- default --> 
</selector> 

これは私がラジオボタンに設定しています方法です:

radioButton.setButtonDrawable(R.drawable.radio_btn_selectors); 

答えて

1

android:state_pressed="true"android:state_focused="true"が理由で動作しませんあなたが様々な州を宣言した注文。このようなdrawableを宣言すると、システムは上から下に移動し、状態が一致すると、他のものを探すことなく、最初の選択に基づいて変更を適用します。ここではandroid:state_pressed="true"android:state_focused="true"の代わりにandroid:state_checked="false"の状態が実行されている可能性があります。したがって、android:state_checked="false"を一番下に移動してからお試しください。

関連する問題