• 在项目中选择器的使用是非常多的,以下是本人在项目中的一些常用的背景选择器的写法

  • 带边框下划线背景选择器效果图:

上面布局中放了10个CheckBox,然后设置了CheckBox的背景图片位,背景选择器,同时设置了字体的颜色选择器。

带边框下划线背景选择器代码:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 选中状态 -->
<item android:state_checked="true">
<!-- 设置层次背景 -->
<layer-list>
<!-- 底层 -->
<item>
<shape android:shape="rectangle"><!-- 画矩形 -->
<!--边框色-->
<stroke android:width="1dp" android:color="@color/gray27"/>
<!-- 背景色 -->
<solid android:color="@color/gray17"/>
<!-- 圆角 -->
<corners android:radius="3dp"/>
</shape>
</item>
<!-- 上层 -->
<item android:top="36.5dp">
<!-- top:距离顶部多少db开始画线,需配合View的高度绘制 -->
<shape android:shape="rectangle">
<solid android:color="@color/mainColor"/>
</shape>
</item>
</layer-list>
</item>
<!-- 默认状态 -->
<item>
<shape>
<stroke android:width="1dp" android:color="@color/gray27"/>
<solid android:color="@color/white"/>
<corners android:radius="@dimen/radius"/>
</shape>
</item>
</selector>

字体选择器代码:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:color="@color/mainColor" />
<item android:color="@color/textColor54" />
</selector>
  • 边框背景选择器效果图:

边框背景选择器实现代码:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true">
<shape >
<stroke android:width="1dp" android:color="@color/mainColor"/>
<solid android:color="@color/gray17"/>
<!-- 圆角 -->
<corners android:radius="@dimen/radius"/>
</shape>
</item>
<item>
<shape>
<stroke android:width="1dp" android:color="@color/gray27"/>
<solid android:color="@color/white"/>
<corners android:radius="@dimen/radius"/>
</shape>
</item>
</selector>

-- 不带边框下划线背景选择器效果图:

不带边框下划线背景选择器实现代码:

<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_checked="true">
<layer-list>
<item android:top="36.5dp">
<shape android:shape="rectangle" >
<solid android:color="@color/mainColor" />
</shape>
</item>
</layer-list>
</item> <item android:drawable="@color/transColor" />
</selector>

Android View 背景选择器编写技巧的更多相关文章

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

              android selector 背景选择器的使用, button (未点击,点击,选中保持状态)效果实现 首先看到selector的属性: android:state_focus ...

  2. Android:关于背景选择器Selector的item顺序

    在使用背景选择器的时候,如果item的顺序不对,会导致不起作用. 1.首先背景选择器的normal选项一定要放在最后. 2.pressed的选择器应该在seclet的前面.我在使用的时候找了半天问题, ...

  3. Android selecter背景选择器使用

    android:drawable这个属性是必须的,默认时的背景图片. android:state_pressed布尔值.true指当用户点击或者触摸该控件的状态.默认为false android:st ...

  4. [转]永久告别Android的背景选择器Selector!无需切很多图了!

    package com.zoke.custom.autobg; import android.content.Context; import android.content.res.TypedArra ...

  5. Android——selector背景选择器的使用详解(二)

    在开发应用中,很多情况下要设计listview或button控件的背景,下面总结一下android的selector的用法:1.在drawable中配置Android的selector.将如下的XML ...

  6. Android selector背景选择器

    selector根据不同的选定状态来定义不同的现实效果 常用属性: android:state_selected--------选中 android:state_focused--------获得焦点 ...

  7. Android中selector背景选择器

    http://blog.csdn.net/forsta/article/details/26148403 http://blog.csdn.net/wswqiang/article/details/6 ...

  8. [转]编写 android.mk 中 LOCAL_C_INCLUDES 的技巧

    看原文请移步:编写 android.mk 中 LOCAL_C_INCLUDES 的技巧 在编写android.mk的过程中,免不了要修改LOCAL_C_INCLUDES来设置头文件的include目录 ...

  9. Android 网络url设置View背景图

    imgstr为url网络图片地址,topllay是要设置背景的控件: 方法1.Android Glide设置View背景图 Glide.with(this).load(imgStr).asBitmap ...

随机推荐

  1. mysql函数之九:MySql取得日期(前一天、某一天)

    取得当天: SELECT curdate(); mysql> SELECT curdate();+------------+| curdate()  |+------------+| 2013- ...

  2. cx_Oracle库导入失败引起crontab中python程序运行失败,并且无错误提示

    今天遇到一个问题: 一个python脚本命令行运行时很正常,放到crontab中就无法工作,日志也没有记录,找了半天,终于发现问题所在. 在脚本最上方,程序如下: #!/usr/local/bin p ...

  3. C++学习笔记1-使用数组进行vector初始化

    另外,如果是定义的时候,可以直接指定复制.比如:int s[5]={1,2,3,4,5};vector<int> v(s,s+5);就可以啦.

  4. Alien Flowers

    题意: 求含有A个"RR",B个"RB",C个"BB",D个"BR"的字符串个数. 解法: 首先考虑"BR&q ...

  5. _beginThreadex的用法

    http://blog.csdn.net/cjcy1984001/article/details/6675669 线程开始和停止函数!  unsigned long _beginthreadex( v ...

  6. ThinkPHP3.2.3中,配置文件里配置项的读取

    在ThinkPHP3.2.3的版本中,配置项的读取,有两种情况. 是在PHP文件或者在PHP代码中的读取方法为C函数,例如:C('配置项的名称'); 在HTML模板中的读取方法为,例如{$Think. ...

  7. 为Docker容器设置静态IP

    此文已由作者袁欢授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 创建docker容器 docker run -it --name=yh -h yh --net=none de ...

  8. ORM取数据很简单!是吗?

    简介 几乎任何系统都以某种方式与外部数据存储一起运行.大多数情况下,外部数据存储是一个关系数据库,并且在实现时通常将数据提取任务委托给某些 ORM. 尽管 ORM 包含很多 routine 代码,但是 ...

  9. CodeForces——Game with string(STL stack栈)

    Two people are playing a game with a string ss, consisting of lowercase latin letters. On a player's ...

  10. HDU3555【数位DP】

    入门...还在学习中,先贴一发大牛博客 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3555 题目大意: 给一个数字n,范围在1~2^63-1,求1~ ...