shape基本用法及全部属性定义
来源:互联网 发布:多益网络注册 编辑:程序博客网 时间:2024/06/04 19:19
如果你对Android系统自带的UI控件感觉不够满意,可以尝试下自定义控件,我们就以Button为例,很早以前Android123就写到过Android Button按钮控件美化方法里面提到了xml的selector构造。当然除了使用drawable这样的图片外今天Android开发网谈下自定义图形shape的方法,对于Button控件Android上支持以下几种属性shape、gradient、stroke、corners等。
我们就以目前系统的Button的selector为例说下:
对于上面,这条shape的定义,分别为渐变,在gradient中startColor属性为开始的颜色,endColor为渐变结束的颜色,下面的 angle是角度。接下来是stroke可以理解为边缘,corners为拐角这里radius属性为半径,最后是相对位置属性padding。
对于一个Button完整的定义可以为
注意Android123提示大家,以上几个item的区别主要是体现在state_pressed按下或state_focused获得焦点时,当当来判断显示什么类型,而没有state_xxx属性的item可以看作是常规状态下。
附shape全部属性定义:
我们就以目前系统的Button的selector为例说下:
<shape> <gradient android:startColor="#ff8c00" android:endColor="#FFFFFF" android:angle="270" /> <stroke android:width="2dp" android:color="#dcdcdc" /> <solid android:color="#ff9d77"/> <corners android:radius="2dp" /> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /></shape>
对于上面,这条shape的定义,分别为渐变,在gradient中startColor属性为开始的颜色,endColor为渐变结束的颜色,下面的 angle是角度。接下来是stroke可以理解为边缘,corners为拐角这里radius属性为半径,最后是相对位置属性padding。
对于一个Button完整的定义可以为
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" > <shape> <gradient android:startColor="#ff8c00" android:endColor="#FFFFFF" android:angle="270" /> <stroke android:width="2dp" android:color="#dcdcdc" /> <corners android:radius="2dp" /> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> </shape> </item> <item android:state_focused="true" > <shape> <gradient android:startColor="#ffc2b7" android:endColor="#ffc2b7" android:angle="270" /> <stroke android:width="2dp" android:color="#dcdcdc" /> <corners android:radius="2dp" /> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> </shape> </item> <item> <shape> <gradient android:startColor="#ff9d77" android:endColor="#ff9d77" android:angle="270" /> <stroke android:width="2dp" android:color="#fad3cf" /> <corners android:radius="2dp" /> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> </shape> </item> </selector>
注意Android123提示大家,以上几个item的区别主要是体现在state_pressed按下或state_focused获得焦点时,当当来判断显示什么类型,而没有state_xxx属性的item可以看作是常规状态下。
附shape全部属性定义:
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape=["rectangle" | "oval" | "line" | "ring"] > <gradient android:angle="integer" android:centerX="integer" android:centerY="integer" android:centerColor="integer" android:endColor="color" android:gradientRadius="integer" android:startColor="color" android:type=["linear" | "radial" | "sweep"] android:usesLevel=["true" | "false"] /> <solid android:color="color" /> <stroke android:width="integer" android:color="color" android:dashWidth="integer" <!--点划线--> android:dashGap="integer" /> <padding android:left="integer" android:top="integer" android:right="integer" android:bottom="integer" /> <corners android:radius="integer" android:topLeftRadius="integer" android:topRightRadius="integer" android:bottomLeftRadius="integer" android:bottomRightRadius="integer" /> </shape>
0 0
- shape基本用法及全部属性定义
- shape基本用法及全部属性定义
- shape基本用法及全部属性定义
- UIButton基本属性及定义
- Android: Selector 与 Shape 属性的一些基本用法
- shape的基本用法
- android shape 属性详细用法
- android shape属性及使用说明
- Kotlin学习系列----定义变量及基本属性
- Android DrawableShape资源的用法,Shape属性,Shape开发
- Android shape 的属性 和 用法
- Android学习之shape属性与用法
- 宏定义基本用法
- Android Selector 与 Shape 基本用法
- Android Selector 与 Shape 基本用法
- Android Selector 与 Shape 基本用法
- Selector与Shape的基本用法
- Android Selector 与 Shape 基本用法
- 圆形button
- 文章标题
- 使用service定期执行一个服务
- tabs圆角效果
- CQOI2017流水账(滚粗记) ---NKwxh (1879570236) 本博客为两个Oier共有,你们不要晕啊!
- shape基本用法及全部属性定义
- kubectl安装配置
- LayerDrawable层叠样式layer-list
- OpenGL概述
- TextView显示文字过长时添加阴影渐变消失效果
- Android 1.5 1.6 2.0 2.1 2.2 2.3 3.0,4.0的区别
- 使用ActivityGroup来切换Activity和Layout
- Entity Framework安装与使用
- WindowManager实现悬浮窗口&可自由移动的悬浮窗口