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

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

上面布局中放了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. 在WinDBG中查看调用栈的命令

    命令 ========== k k命令显示的是一定数量的栈帧, 其中帧的数量是由.kframes命令来控制的, 默认值是256. kp 5 显示调用栈中前5个函数以及他们的参数. kb 5 显示调用栈 ...

  2. bzoj 4300 绝世好题 —— 思路

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4300 记录一下 mx[j] 表示以第 j 位上是1的元素结尾的子序列长度最大值,转移即可. ...

  3. node process-进程

    process对象是一个全局变量,提供Node.js进程的有关信息以及控制进程.因为是全局变量所以可以直接使用

  4. androidEditTextinputType及android:imeOptions=”actionDone”(转)

    一.android 软件盘事件响应 在android中,有时需要对EditText实现软件盘监听的场景.当android按下软键盘的时候,响应完成.发送.搜索或者其他事件. Google 提供了 Ed ...

  5. java的环境变量classpath中加点号 ‘.’ 的作用

    java的环境变量classpath中加点号 ‘.’ 的作用 “.”表示当前目录,就是编译或者执行程序时,你的.class文件所在的目录: 当找.class文件时,先去“.”路径下找,找不到的话,在去 ...

  6. Flex Builder 装SVN

    由于Flex Builder没有内置SVN支持,很是不便.为了方便,给Flex Builder也装了SVN插件.由于FB基于Eclipse,安装方法都是一样的. 选择 Help -> Soft ...

  7. c#中 这种构造方法Recer(…):this(…){ }

    指的是构造函数首先调用另外一个构造函数. class Program { static void Main(string[] args) { Person p2 = new Person(" ...

  8. Weekly Contest 111-------->944. Delete Columns to Make Sorted

    We are given an array A of N lowercase letter strings, all of the same length. Now, we may choose an ...

  9. typescript语法入门

    一.字符串 1.多行字符串: (支持换行) ` <div></div> <p></p> ` 2.表达式:${} --> 变量 var a = 'd ...

  10. laravel 安装配置前准备

    Laravel 框架使用 Composer 来管理其依赖性.所以,在你使用 Laravel 之前,你必须在你电脑上是否安装了 Composer.最简单的获取Composer的方式就是百度之,百度关键字 ...