Android使用layer-list和selector

来源:互联网 发布:coc女皇升级数据 编辑:程序博客网 时间:2024/05/21 00:00

平时设置button点击效果的实现可以用selector,但是有时候点击效果有点复杂,需要实现边框等,这时可以考虑把layer-list和selector糅合到一起,本来打算直接在selector下面的item里面直接添加layer-list,但是经测试,不能用,查了资料,找到了一种方法,下面这种方法可以实现:

第一步:首先你要创建几个不同状态的button效果,放到drawable文件夹下面,比如layer1.xm,layer2.xml,layer3.xml.

<?xml version="1.0" encoding="utf-8"?><layer-list    xmlns:android="http://schemas.android.com/apk/res/android"    >    <item>        <shape            xmlns:android="http://schemas.android.com/apk/res/android"            android:shape="rectangle"            >            <gradient                android:angle="270"                android:startColor="#0000ff"                android:endColor="#0000dd"                android:type="linear"                />            </shape>    </item></layer-list>
第二步:创建一个selector,这里命名为btn_background,在drawable属性里面引入上一步的layer文件:
<selector    xmlns:android="http://schemas.android.com/apk/res/android">    <item android:state_pressed="true" android:drawable="@drawable/layer1">    </item>    <item android:state_focused="true" android:drawable="@drawable/layer2">    </item>    <item android:drawable="@drawable/layer3">            </item></selector>
第三部:在button的background属性里面设置:

android:background="@drawable/btn_background"


0 0
原创粉丝点击