Android 使用shape定义不同控件的的颜色、背景色、边框色

设置按钮的右边框和底边框颜色为红色,边框大小为3dp:

在drawable新建一个 buttonstyle.xml的文件,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 连框颜色值 --><item>
<shape>
<solid android:color="#ff0000" />
</shape>
</item>
<!-- 主体背景颜色值 -->
<item android:bottom="3dp" android:right="3dp">
<shape>
<solid android:color="#ffffff" /> <padding android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp" />
</shape>
</item>
</layer-list>

然后在布局文件里面的Button里面设置如下:

<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button1"
android:background="@drawable/buttonstyle" />

android shape的使用
shape用于设定形状,可以在selector,layout等里面使用,有6个子标签,各属性如下:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" > <!-- 圆角 -->
<corners
android:radius="9dp"
android:topLeftRadius="2dp"
android:topRightRadius="2dp"
android:bottomLeftRadius="2dp"
android:bottomRightRadius="2dp"/><!-- 设置圆角半径 --> <!-- 渐变 -->
<gradient
android:startColor="@android:color/white"
android:centerColor="@android:color/black"
android:endColor="@android:color/black"
android:useLevel="true"
android:angle="45"
android:type="radial"
android:centerX="0"
android:centerY="0"
android:gradientRadius="90"/> <!-- 间隔 -->
<padding
android:left="2dp"
android:top="2dp"
android:right="2dp"
android:bottom="2dp"/><!-- 各方向的间隔 --> <!-- 大小 -->
<size
android:width="50dp"
android:height="50dp"/><!-- 宽度和高度 --> <!-- 填充 -->
<solid
android:color="@android:color/white"/><!-- 填充的颜色 --> <!-- 描边 -->
<stroke
android:width="2dp"
android:color="@android:color/black"
android:dashWidth="1dp"
android:dashGap="2dp"/> </shape>

最新文章

  1. Hbuilder开发HTML5 APP之创建子页面
  2. 表格不被内容撑大,且超出的内容变为省略号(css)
  3. winrar命令行加压解密
  4. BZOJ3924——[Zjoi2015]幻想乡战略游戏
  5. 如何使用命令行编译以及运行java文件
  6. 2013年 蓝桥杯预赛 java 本科A 题目
  7. &lt;转载&gt;NPOI Excel 单元格背景颜色对照表
  8. JavaScript----this陷阱的最全收集
  9. 详解集群内Session高可用的实现原理
  10. 弱类型语言中的0和空字符串(&#39;&#39;或&quot;&quot;)以及字符串&#39;0&#39;
  11. 团队作业8——第二次项目冲刺(Beta阶段)Day6——5.25
  12. 如何在IIS上发布网站
  13. Java 环境下载设置
  14. 虚拟机时间同步14 Aug 04:09:18 ntpdate[2941]: no server suitable for synchronization found
  15. iOS运行时使用(动态添加方法)
  16. SQL-记录删除篇-007
  17. os模块 与 sys模块
  18. (区间dp 或 记忆化搜素 )Brackets -- POJ -- 2955
  19. 【转】系统去掉 Android 4.4.2 的StatusBar和NavigationBar
  20. [转载]angular通过$http与服务器通信

热门文章

  1. 深入理解StrongReference,SoftReference, WeakReference和PhantomReference
  2. WebService之CXF注解之三(Service接口实现类)
  3. 你的变量究竟存储在什么地方 &amp;&amp; 全局内存
  4. 网络协议笔记-网络层-路由器的作用、IP地址
  5. 下载安装eclipse
  6. UniCode 下 CString 转 char* 的方法(转)
  7. div里面的图片垂直居中
  8. JAVA几种缓存技术介绍说明
  9. 【小白学爬虫连载(10)】–如何用Python实现模拟登陆网站
  10. 【BZOJ4195】【NOI2015】程序自动分析(并查集)