1
我有一个ListView和一个按钮。该按钮应该始终是可点击的,但当ListView为空时启用(实际背景)时,按钮背景图像应该被禁用(变灰),而当ListView包含项目时。Android - 启用按钮点击禁用状态(android:enabled =“false”)
我知道这可以通过始终将启用的状态设置为true并更改背景图像从代码实现。但我正在寻找使用选择器在XML中实现这一点。
我有一个ListView和一个按钮。该按钮应该始终是可点击的,但当ListView为空时启用(实际背景)时,按钮背景图像应该被禁用(变灰),而当ListView包含项目时。Android - 启用按钮点击禁用状态(android:enabled =“false”)
我知道这可以通过始终将启用的状态设置为true并更改背景图像从代码实现。但我正在寻找使用选择器在XML中实现这一点。
看看下面的代码:
<?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