Arc*_*pgc 0 xml android selector togglebutton android-layout
<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>
Run Code Online (Sandbox Code Playgroud)
如何使用颜色代替可绘制的颜色?
我试过这个:
<?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>
Run Code Online (Sandbox Code Playgroud)
在名称为bg_toggle.xml的颜色文件夹中定义了上述选择器
和
android:background="@color/bg_toggle"
Run Code Online (Sandbox Code Playgroud)
这给出了一个例外:
android.view.InflateException:二进制XML文件行#50:错误膨胀类android.widget.ToggleButton
org.xmlpull.v1.XmlPullParserException:二进制XML文件行#4:标记需要一个'drawable'属性或定义drawable的子标记
谢谢
试试这个
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:drawable="@color/bg_blue"/>
<item android:state_checked="false" android:drawable="@color/bg_light_grey"/>
</selector>
Run Code Online (Sandbox Code Playgroud)
编辑
来自android Doc
注意:颜色资源也可以用作XML中的drawable.例如,在创建状态列表drawable时,您可以引用android:drawable属性的颜色资源(android:drawable ="@ color/green").
| 归档时间: |
|
| 查看次数: |
3124 次 |
| 最近记录: |