我有一个ListView和一个Button。按钮应始终可单击,但当ListView为空时应禁用(灰色)按钮背景图像,并在ListView具有项目时启用(实际背景)。
我知道这可以通过始终将状态设置为true并更改背景图像来实现。但我希望使用选择器在XML中实现这一点。
答案 0 :(得分:0)
看看以下代码:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" android:constantSize="true" android:dither="true">
<item android:drawable="@drawable/button_enabled" android:state_enabled="true" />
<item android:drawable="@drawable/button_disabled" android:state_enabled="false" />
</selector>
在drawables
文件夹中使用此代码(作为XML资源)。
然后使用此drawable并将其设置为按钮的背景属性。 (当然,android:background="@drawable/your_selector_file"
没有.xml扩展名)
如果您需要更多信息,请参阅以下链接:http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList