使用灵活的selector layer-list item 组合来设置button的背景

原创 2016年08月30日 21:30:46
比较灵活的方式:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true">
        <layer-list>
            <item android:drawable="@color/white_50" android:height="@dimen/dp_50" android:width="@dimen/dp_72">
            </item>
            <item android:top="@dimen/dp_5" android:bottom="@dimen/dp_5" android:left="@dimen/dp_10" android:right="@dimen/dp_10">
                <shape
                    android:shape="rectangle">
                    <solid android:color="@color/transparent"/>
                    <stroke android:width="@dimen/dp_2" android:color="@color/white_20"/>
                    <size android:width="@dimen/dp_44"
                        android:height="@dimen/dp_28"/>
                    <corners android:radius="@dimen/dp_3"/>
                </shape>
            </item>
        </layer-list>
    </item>
    <item>
        <layer-list>
            <item android:drawable="@color/white_10" android:height="@dimen/dp_50" android:width="@dimen/dp_72">
            </item>
            <item android:top="@dimen/dp_5" android:bottom="@dimen/dp_5" android:left="@dimen/dp_10" android:right="@dimen/dp_10">
                <shape
                    android:shape="rectangle">
                    <solid android:color="@color/transparent"/>
                    <stroke android:width="@dimen/dp_2" android:color="@color/white_20"/>
                    <size android:width="@dimen/dp_44"
                        android:height="@dimen/dp_28"/>
                    <corners android:radius="@dimen/dp_3"/>
                </shape>
            </item>
        </layer-list>
    </item>

</selector>
或者更简单的:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="true">
        <shape
            android:shape="rectangle">
            <solid android:color="@color/blue"/>
            <stroke android:width="2dp" android:color="@color/white"/>
            <size android:width="40dp"
                  android:height="28dp"/>
            <corners android:radius="5dp"/>
        </shape>
    </item>
    <item>
        <shape
            android:shape="rectangle">
            <solid android:color="@android:color/transparent"/>
            <stroke android:width="2dp" android:color="@color/white"/>
            <size android:width="40dp"
                  android:height="28dp"/>
            <corners android:radius="5dp"/>
        </shape>
    </item>

</selector>



Android layer-list的属性和使用详解

Android layer-list的属性和使用详解,layer-list是用来多个图层堆叠显示的,借这个特性可以做一些特别的效果(比如:阴影、下面的效果等),也可以投机取巧。 1.代码片 ...
  • pcaxb
  • pcaxb
  • 2015年08月19日 15:47
  • 11024

当selector的Item不为shape时,设置drawable的宽高

由于selector不能设置item的宽、高,如果其默认显示的item是通过指定了宽、高的shape实现,而其它的state是通过image资源实现时,则在不同分辨率的手机上,操作时就存在宽、高不一致...
  • ecjtuhq
  • ecjtuhq
  • 2017年07月09日 20:56
  • 308

通过layer-list自定义EditText背景

假设activity的背景是白色,第一层也(就是最底层)是绿色;第二次是白色,但是距离底部有一段小偏移,目的是为了做出文本框两边的小勾;第三层也是白色,但是它距离底部和左右两边都有一定距离。通过三层配...
  • u011127787
  • u011127787
  • 2015年02月04日 09:33
  • 905

Android selector的item里的属性说明

Selector是用来改变控件在不同状态(如:点击和不点击)下的行为,可以是颜色,或者上面的字。和在Android UI设计中经常用到。比如我们要自定义一个圆角Button,点击Button有些效果的...
  • banana1006034246
  • banana1006034246
  • 2016年03月12日 23:35
  • 632

Layer-list介绍与使用

layer-list 其实就是将多个图片或两种效果按照顺序层叠起来 用于叠加多个图片 实现方式如下: 第一步,在 drawable 文件夹中新建 xml 文件: img_layers.xml 代码...
  • baidu_33221362
  • baidu_33221362
  • 2017年04月17日 22:59
  • 554

android selector 背景选择器的使用, button (未点击,点击,选中保持状态)效果实现

android selector 背景选择器的使用, button (未点击,点击,选中保持状态)效果实现 首先看到selector的属性: android:state_focused and...
  • u011140027
  • u011140027
  • 2013年10月11日 13:30
  • 12092

【安卓开发】JAVA代码设置selector不同状态下的背景颜色

【安卓开发】JAVA代码设置selector不同状态下的背景颜色本文转自http://www.cnblogs.com/albert-ly/p/Android.html 代码实现Shape 代码实现S...
  • ZaoAnDiQiu
  • ZaoAnDiQiu
  • 2016年08月09日 11:44
  • 1717

设置Button按钮状态背景

Android selector选择器可以让你切换自定义的背景风格,让你的控件或者布局在不同状态下背景切换,背景可以使眼色或者图片资源。 首先,android中的selector要在re...
  • Androidtalent
  • Androidtalent
  • 2016年08月17日 10:45
  • 3256

android代码实现圆角布局及selector背景选择

代码设置圆角布局 代码设置背景选择selector,
  • u012743061
  • u012743061
  • 2015年05月12日 10:36
  • 960

layer-list实现阴影效果

为控件实现阴影效果,可以有多种方式:多个drawable层叠在一起(不好的实现是多个View层叠达到多个drawable的层叠效果,相对好的实现是在同一个View钟实现多个drawable的层叠) 自...
  • xplee0576
  • xplee0576
  • 2015年11月20日 16:21
  • 1312
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用灵活的selector layer-list item 组合来设置button的背景
举报原因:
原因补充:

(最多只允许输入30个字)