如何像普通按钮一样更改我用作可点击点击的相对布局的颜色? 就像我想要一个视觉反馈一样,布局被按下了。
我尝试使用绑定(bind)到背景属性的选择器,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:color="@android:color/black"/>
<item android:state_pressed="true" android:state_enabled="false" android:color="@android:color/black" />
<item android:color="@android:color/white"/>
</selector>
并在布局背景中使用它...
android:background="@color/layout_selector"
但这给了我一个 Inflate Exception...
有什么想法吗?
最佳答案
尝试以下步骤:
在 res --> values 文件夹中创建 color.xml 内容:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="black">#000000</color>
<color name="white">#ffffff</color>
</resources>
作为 <item>
选择器中的标签需要一个可绘制属性或定义可绘制的子标签,您的 layout_selector.xml 文件(保存在 res --> drawable 中)应如下所示:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:drawable="@color/black"/>
<item android:state_pressed="true" android:state_enabled="false" android:drawable="@color/black" />
<item android:drawable="@color/white"/>
</selector>
另外,如前所述,相对布局应该是可点击的(android:clickable="true"
)
其背景设置为android:background="@drawable/layout_selector"
希望对你有帮助
关于java - Android RelativeLayout 改变颜色 onClick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5789661/