我正在编写XML选择器
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/image_state2" android:state_pressed="true"/>
<item android:drawable="@drawable/image_state1"/>
</selector>
我只想让state1变得透明。所以要看的图像是 -
STATE1
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:angle="270"
android:endColor="#00000000"
android:startColor="#00000000" />
现在我想让state2对我已经完成的一些照片进行着色。我的问题是,除了阴影渐变,我想在中心出现一个图标。我不知道如何通过xml
添加它STATE2
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:angle="270"
android:endColor="#80000000"
android:startColor="#80000000" />
答案 0 :(得分:8)
您可以使用以下的图层列表来执行此操作:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape android:shape="rectangle" >
<gradient
android:angle="270"
android:endColor="#80000000"
android:startColor="#80000000" />
</shape>
</item>
<item>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/background"
android:tileMode="repeat" android:gravity="center" />
</item>
</layer-list>
将上述内容保存为@ drawable / image_state2。