我有一个定义好的Drawable资源(res/drawable/.xml),其中包含定义好的颜色资源(res/color/.xml)。颜色资源包含状态选择器。
在Android 5+上一切都可以正常工作,颜色状态选择器也可以正常工作。但在Android 4上无法工作。这是什么原因?如何解决?
布局:
<Button
android:background="@drawable/btn_login"
drawable/btn_login.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle">
<stroke
android:width="@dimen/login_button_border"
android:color="@color/btn_login_border" />
<solid android:color="@color/btn_login_background" />
</shape>
</item>
<item android:bottom="@dimen/login_button_border">
<shape android:shape="rectangle">
<stroke
android:width="@dimen/login_button_border"
android:color="@color/btn_login_background" />
<solid android:color="@android:color/transparent" />
</shape>
</item>
</layer-list>
color/btn_login_border.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/login_border_highlighted" android:state_pressed="true"/>
<item android:color="@color/login_border"/>
</selector>
color/btn_login_background.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/login_button_highlighted" android:state_pressed="true"/>
<item android:color="@color/login_button"/>
</selector>