安卓开发笔记(三十一):shape标签下子类根结点的具体使用
在我的上一篇博文当中阐述了我们如何使用shape标签进行自定义控件,这里对shape控件的属性进行阐述,不知道如何使用这些属性的可以参见我的上一篇博文(自定义Button):https://www.cnblogs.com/geeksongs/p/10789671.html
在Android Studio的开发环境下,系统也会自动提醒你添加哪些属性,使用起来十分方便
2、shape下size标签:设置shape宽高值
注意事项:只有控件宽高设置成wrap_content时,此处宽高才起作用,但是起到的却是最小宽高值。也就是说,当控件宽高超过你此处指定的值时,它会变化(wrap_content!!!)
| 属性 | 含义 |
|---|---|
| width | 宽度 |
| height | 高度 |
3、shape下solid标签:设置形状填充颜色
| 属性 | 含义 |
|---|---|
| color | 指定颜色 |
这个属性有点奇怪,只有一个属性, 比较特殊
4、shape下padding标签:设置内容与边界的距离
| 属性 | 含义 |
|---|---|
| left | 左内边距 |
| top | 上内边距 |
| right | 右内边距 |
| bottom | 左内边距 |
5、shape下corners标签:设置四个角的圆角
| 属性 | 含义 |
|---|---|
| radius | 四个角圆角 |
| topLeftRadius | 左上角的圆角 |
| topRightRadius | 右上角的圆角 |
| bottomLeftRadius | 左下角的圆角 |
| bottomRightRadius | 右下角的圆角 |
6、shape下stroke标签:设置shape的外边界线
| 属性 | 含义 |
|---|---|
| color | 描边的颜色 |
| width | 边界线的宽度 |
| dashWidth | 段虚线的宽度 |
| dashGap | 段虚线的间隔 |
7、shape下的gradient标签:设置形状渐变
| 属性 | 含义 | 值等解释 |
|---|---|---|
| type | 渐变的类型 | 1.linear:线性渐变,默认的渐变类型 2.radial:放射渐变,设置该项时,必须设置android:gradientRadius渐变半径属 3.sweep:扫描性渐变 |
| angle | 渐变角度 | 渐变的角度,线性渐变时(linear也是默认的渐变类型)才有效,必须是45的倍数,0表示从左到右,90表示从下到上 |
| centerX | 渐变中心的相对X坐标 | 放射渐变时(radial)才有效,在0.0到1.0之间,默认为0.5,表示在正中间 |
| centerY | 渐变中心的相对Y坐标 | 放射渐变时(radial才有效,在0.0到1.0之间,默认为0.5,表示在正中间 |
| useLevel | 使用等级 | 如果为true,则可在LevelListDrawable中使用。这通常应为“false”,否则形状不会显示 |
| startColor | 渐变开始的颜色 | - |
| centerColor | 渐变中间的颜色 | - |
| endColor | 渐变结束的颜色 | - |
| gradientRadius | 渐变半径 | 渐变的半径,只有渐变类型为radial时才使用 |
安卓开发笔记(三十一):shape标签下子类根结点的具体使用的更多相关文章
- 安卓开发笔记(十一):SharedPrefences储存
一.利用SharedPrefences将数据储存于data.txt当中 package com.example.lenovo.studyittwo; import android.content.Br ...
- 安卓开发笔记——丰富多彩的TextView
随手笔记,记录一些东西~ 记得之前写过一篇文章<安卓开发笔记——个性化TextView(新浪微博)>:http://www.cnblogs.com/lichenwei/p/4411607. ...
- 安卓开发笔记——深入Activity
在上一篇文章<安卓开发笔记——重识Activity >中,我们了解了Activity生命周期的执行顺序和一些基本的数据保存操作,但如果只知道这些是对于我们的开发需求来说是远远不够的,今天我 ...
- 安卓开发笔记——自定义广告轮播Banner(实现无限循环)
关于广告轮播,大家肯定不会陌生,它在现手机市场各大APP出现的频率极高,它的优点在于"不占屏",可以仅用小小的固定空位来展示几个甚至几十个广告条,而且动态效果很好,具有很好的用户& ...
- 安卓开发笔记——关于开源项目SlidingMenu的使用介绍(仿QQ5.0侧滑菜单)
记得去年年末的时候写过这个侧滑效果,当时是利用自定义HorizontalScrollView来实现的,效果如下: 有兴趣的朋友可以看看这篇文件<安卓开发笔记——自定义HorizontalScro ...
- angular学习笔记(三十一)-$location(2)
之前已经介绍了$location服务的基本用法:angular学习笔记(三十一)-$location(1). 这篇是上一篇的进阶,介绍$location的配置,兼容各版本浏览器,等. *注意,这里介绍 ...
- 安卓开发笔记——打造万能适配器(Adapter)
为什么要打造万能适配器? 在安卓开发中,用到ListView和GridView的地方实在是太多了,系统默认给我们提供的适配器(ArrayAdapter,SimpleAdapter)经常不能满足我们的需 ...
- angular学习笔记(三十一)-$location(1)
本篇介绍angular中的$location服务的基本用法,下一篇介绍它的复杂的用法. $location服务的主要作用是用于获取当前url以及改变当前的url,并且存入历史记录. 一. 获取url的 ...
- 安卓开发笔记——关于Handler的一些总结(上)
接上篇文章<安卓开发笔记——关于AsyncTask的使用>,今天来讲下在安卓开发里"重中之重"的另一个异步操作类Handler. 今天打算先讲下关于Handler的一些 ...
随机推荐
- Mybatis 系列3
系列文章 2 中,我们通过对mybatis源码的简单分析,可看出,在mybatis配置文件中,在configuration根节点下面,可配置properties.typeAliases.plugins ...
- MQTT入手笔记(二)
Mosquitto是一个实现了MQTT3.1协议的代理服务器,由MQTT协议创始人之一的Andy Stanford-Clark开发,它为我们提供了非常棒的轻量级数据交换的解决方案.本文的主旨在于记录M ...
- Jenkins踩坑系列--你试过linux主机ssh登录windows,启动java进程吗,来试试吧
一.问题概述 在一个多月前,组长让我研究下持续集成.我很自然地选择了jenkins.当时,(包括现在也是),部分服务器用的是windows主机. 我当时想了想,如果我把jenkins装在windows ...
- C#实现的HttpGet请求
话不多说,代码贴上: /// <summary> /// HTTP Get请求 /// </summary> /// <param name="url" ...
- Java容器:Set
Set和数学中的集合十分类似,在Java中,Set是一种绝不会包含两个相等元素的存储结构.在阅读此文前请阅读Java容器:Map. Set方法 增添方法: boolean add(E e); bool ...
- 第四次作业之jieba库的应用
#!/usr/bin/python# -*- coding:utf-8 -*- import imp,sys imp.reload(sys)from matplotlib.font_manager i ...
- Python_json
import json ''' Python内置了json包来帮助我们完成对json的操作. 将Python的字典结构导出到json使用json.dumps(),将json读成Python的字典结构, ...
- DX11 Without DirectX SDK--05 键盘和鼠标输入
回到 DirectX11--使用Windows SDK来进行开发 提供键鼠输入可以说是一个游戏的必备要素.在这里,我们不使用DirectInput,因为Windws SDK本身就不提供该头文件.这里我 ...
- Eclipse开发前,常用设置
设置工作空间的项目编码, 防止出现乱码 Window - Preferences - General - Workspace 将"Text file encoding" ...
- ActiveMQ的消息持久化机制
为了避免意外宕机以后丢失信息,需要做到重启后可以恢复消息队列,消息系统一般都会采用持久化机制. ActiveMQ的消息持久化机制有JDBC,AMQ,KahaDB和LevelDB,无论使用哪种持久化方式 ...