<ToggleButton
android:id="@+id/toggle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/check"
android:layout_margin="10dp"
android:textOn=""
android:textOff=""
android:focusable="false"
android:focusableInTouchMode="false"
android:layout_centerVertical="true"/>
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- When selected, use grey -->
<item android:drawable="@drawable/selected_image"
android:state_checked="true" />
<!-- When not selected, use white-->
<item android:drawable="@drawable/unselected_image"
android:state_checked="false"/>
</selector>
ドローアブルの代わりに色を使用するにはどうすればよいですか?
私はこれを試しました:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:color="@color/bg_blue"/>
<item android:state_checked="false" android:color="@color/bg_light_grey"/>
</selector>
上記のセレクターをカラーフォルダーにbg_toggle.xmlという名前で定義しました
と
android:background="@color/bg_toggle"
これは例外を与えます:
android.view.InflateException:バイナリXMLファイルの行#50:クラスandroid.widget.ToggleButtonの拡張中にエラーが発生しました
org.xmlpull.v1.XmlPullParserException:バイナリXMLファイルの行#4:タグには「drawable」属性またはdrawableを定義する子タグが必要です
ありがとうございました