android xml默认颜色,Android中通过xml改变背景及文字颜色

原创文章,转载请注明出处,谢谢!

本篇主要介绍Android开发中,通过XML资源文件来设置控件在不同状态下的背景及文字颜色。关于xml改变背景及文字颜色的原理,大家可以去看一下郭霖大神的源码分析文章,

这部分内容不难理解,但是很容易忘记,并且网上相关的文章都比较零散,没有进行汇总。所以才有了我写这篇博客的初衷,给自己作一个详细总结,也给新手开发者一点帮助,老鸟

飘过。

一、通过xml文件给控件设置边框,圆角,渐变色

作为Android开发者,我们很多时候做开发并没有美工的支持,这时候我们需要设计一些相对比较漂亮的界面效果,就需要借助于android为我们提供的原始设计界面的方式,通过xml。

以下分别是不同情况下的设计方式和基本原理,请注意详细的代码注释。

1.设置边框,见下图:

f2befc415dc7da1d73251de40b1763a1.png

d3d2eab077683a87ad72c70882c56cec.png

2.设置单边和不同颜色的多边框:

0c1cbf4bcba74220ee180fdc63980ccd.png

28ea4139ee1e0b8607a4615627c661bc.png

3.设置圆角:

08124e0161cee59426211336d9d95a54.png

1fc8a20c3c95c32a98b4c0d81171d3a3.png

4.设置渐变色:

e437c946d440fb73cdca42b123199ccf.png

98e8b3111ea13abd60832115901e690e.png

二、给控件设置在不同状态下的背景色或背景图片

1.设置不同状态背景色

53d329e2488c7395848ebd12b7755e9a.png

未点击                                                                                          点击下

6ef2d6521aaca5716e239afb57d30f78.png

2.不同状态下的背景图片:

1b7b9b32869bb5c38cfc6a209d235596.png

未点击                         点击

43fbc8684f3a45c2d5dd0b981d1ecb25.png

218726057aedd52c872ef6c8b927e933.png

3.不同状态背景与边框,圆角等相结合

c5e61b8bdeff07e5ccbc7698df6fdc74.png

fa351e27608d6b9f945bfc93e605181b.png

81ddb8040335218ce927e083f0d166fa.png

三.不同状态下的文字颜色

给文字定义在不同状态下的颜色时,同样是使用selector这个TAG,但是与背景颜色定义不同的是:

文字颜色在selector使用的是color属性,而背景颜色使用的是drawable属性。

例如:

fd73d7c6fc1565ef3759006cf29e1248.png

!!!注意:定义文字颜色的selector文件可以放在drawable文件夹下,引用时使用@drawable/selector.xml

可以在res下新建一个color文件夹,专门存放文字颜色的selector文件(个人强烈推荐此种方式,容易区分文字颜色和背景),

此时引用时要使用@color/selector.xml

见下图:

a88f09e00a7146d58192a2a634e1a803.png

好了,到此为止,基本上把Android中通过xml来改变控件背景色和文本颜色的相关知识说完了。相信读者看了这篇文章,应改对

xml定义颜色有了一个非常清晰的认识。

由于作者水平所限,如果有任何问题,欢迎随时交流。

button改变背景与文字颜色

1.定义/zhsh/res/color/txt_guide_selector.xml <?xml version="1.0" encoding="utf-8&quo ...

修改Android中strings&period;xml文件&comma; 动态改变数据

有些朋友可能会动态的修改Android中strings.xml文件中的值,在这里给大家推荐一种简单的方法.strings.xml中节点是支持占位符的,如下所示:

&lbrack;置顶&rsqb; Android学习系列-Android中解析xml(7)

Android学习系列-Android中解析xml(7) 一,概述 1,一个是DOM,它是生成一个树,有了树以后你搜索.查找都可以做. 2,另一种是基于流的,就是解析器从头到尾解析一遍xml文件.   ...

android 中theme&period;xml与style&period;xml的区别

from://http://liangoogle.iteye.com/blog/1848448 android 中theme.xml与style.xml的区别: 相同点: 两者的定义相同.

Android中解析XML格式数据的方法

XML介绍:Extensible Markup Language,即可扩展标记语言 一.概述 Android中解析XML格式数据大致有三种方法: SAX DOM PULL 二.详解 2.1 SAX S ...

设置LISTControl控件某一行的背景和文字颜色

定义宏 用listcontrol的SetItemData设置某一行的属性,通过自定义属性标识实现. 自定义某行内容颜色属性: #define COLOR_DEFAULT 0 //默认颜色 #defin ...

xml中,button改变背景颜色方法

在画几个设置界面,用到了button控件,对于button空间的背景色在不同状态下的颜色改变方法,做了一下尝试,发现了两种背景颜色改变的方法,就总结了下. 方法一尝试了好多遍才好,要点在于,在sele ...

Android中attrs&period;xml文件的使用详解

$*********************************************************************************************$ 博主推荐 ...

Android中解析XML

XML在各种开发中都广泛应用,Android也不例外.作为承载数据的一个重要角色,如何读写XML成为Android开发中一项重要的技能.今天就由我向大家介绍一下在Android平台下几种常见的XML解 ...

随机推荐

前端构建大法 Gulp 系列 &lpar;一&rpar;:为什么需要前端构建

系列目录 前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gul ...

asp&period;net LINQ防止SQL注入式攻击

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

ios开发怎么获取输入的日期得到星期

+ (NSString*)weekdayStringFromDate:(NSDate*)inputDate { NSArray *weekdays = [NSArray arrayWithObject ...

RequireJS使用及JS目录规划

1.RequireJS学习文档: http://www.requirejs.cn/ 2.目录规划(参考:ColUdf.vm) 1)一个完整的html,对应一个js文件,模块js在主页面对应的js文件中 ...

远程调试树莓PI

非官方 参考  http://linuxtortures.blogspot.jp/2012/06/cross-compiling-and-cross-debugging-c.html 注意: 建立 / ...

历届试题 小数第n位 (求循环节)

只要被除数出现重复,就表明循环节出现了.即使商不是循环小数,也可以补0作为循环节,这样就可以统一处理了. AC代码 #include #include

浅析toString&lpar;&rpar;和toLocaleString&lpar;&rpar;的区别

翻看,对toString()和toLocaleString()两者的区别并没有直白的说明,简单查阅了一下 ecmascript官方文档 和 MDN 二者 ...

android的特点有哪些

android拥有完善的应用程序框架,支持4大应用组件activity,service,contentProvider,broadcast,可以在任意层次上进行复用和更换: android中java字 ...

Oracle登录命令

1.运行SQLPLUS工具 C:\Users\wd-pc>sqlplus 2.直接进入SQLPLUS命令提示符 C:\Users\wd-pc>sqlplus /nolog 3.以OS身份连 ...

iOS 自定义步骤进度条

新项目要做入驻功能,其中包括一个入住流程,类似登录或者注册流程如下图. 之前想着用自己绘图来做,可是又懒不想多写代码,所以就想着能不能用进度条来做. 1.用进度条做的首先要解决的是进度条的高度问题,可 ...

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值