我有这个selector
xml文件,该文件作为背景元素应用于RelativeLayout
:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<shape>
<solid
android:color="#449def" />
<stroke
android:width="1dp"
android:color="#2f6699" />
<corners
android:radius="3dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
<item android:state_pressed="false">
<shape>
<gradient
android:startColor="#f3ae1b"
android:endColor="#bb6008"
android:angle="270" />
<stroke
android:width="1dp"
android:color="#bb6008" />
<corners
android:radius="10dp" />
<padding
android:left="0dp"
android:top="10dp"
android:right="0dp"
android:bottom="10dp" />
</shape>
</item>
</selector>
我的问题是:当状态发生变化时,为什么这种布局的颜色不会改变?
答案 0 :(得分:3)
你必须使布局可点击。 添加:
android:clickable="true"
到您的RelativeLayout定义