Shape(模型)通常用于自定义各种形状的图形,作为背景等。

shape分为 rectangle(矩形)  oval(椭圆)   Line(线性)   ring(环形)

属性:corners(圆角)

android:radius="10dp"数值越大越圆

gradient (渐变色)

android:startColor  颜色值                             起始颜色    
                     android:endColor    颜色值                            结束颜色    
                     android:centerColor 整型                              渐变中间颜色,即开始颜色与结束颜色之间的颜色    
                     android:angle       整型                                  渐变角度(angle必须为45的整数倍)    
                     android:type        ["linear" | "radial" | "sweep"] 渐变类型(取值:linear、radial、sweep)    
                                                 linear 线性渐变,这是默认设置    
                                                 radial 放射性渐变,以开始色为中心。    
                                                 sweep 扫描线式的渐变。    
                                                 android:gradientRadius 整型                     渐变色半径.当 android:type="radial" 时才使用。单独使用 android:type="radial"会报错。    
                                                 android:centerX      整型                              渐变中心X点坐标的相对位置    
                                                 android:centerY      整型                              渐变中心Y点坐标的相对位置

padding(内边距)

solid(填充)

size(大小)

stroke(描边)

android:width       整型  描边的宽度

android:color       颜色值     描边的颜色    
                   android:dashWidth   整型  表示描边的样式是虚线的宽度, 值为0时,表示为实线。值大于0则为虚线。    
                   android:dashGap     整型  表示描边为虚线时,虚线之间的间隔 即“ - - - - ”             仅当这两个属性都设置时虚线效果才生效

实例:
<Button
    android:id="@+id/choose_image_btn"
    android:layout_width="wrap_content"
    android:layout_height="36dp"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="15dp"
    android:background="@drawable/bg_choose_image_btn"
    android:text="打开相册中的二维码"
    android:textColor="@android:color/white"
    android:textSize="15sp" />

 bg_choose_image_btn.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 连框颜色值 -->
    <item>
        <shape
            android:shape="rectangle">
            <corners android:radius="5dp" />
            <solid android:color="#FFFFFF" />
        </shape>
    </item>
    <!-- 主体背景颜色值 -->
    <item
        android:bottom="1dp"
        android:left="1dp"
        android:right="1dp"
        android:top="1dp">
        <shape
            android:shape="rectangle">
            <corners android:radius="4dp" />
            <solid android:color="#de6e6a6a" />
            <padding
                android:left="12dp"
                android:right="12dp" />
        </shape>
    </item>
</layer-list>

Shape的属性介绍及使用相关推荐

  1. android中的shape资源,Android Drawable资源讲解之shape篇

    运用好Android的drawable资源,在开发中就可以减少图片的使用量,这样既缩小了app的体积,也省去了设计图片的时间,而且也容易适配不同的屏幕尺寸. 今天首先来讲讲shape资源的使用. 1. ...

  2. android 背景切换动画效果代码,关于Android shape gradient背景渐变

    百度后,发现渐变色不仅可以根据xml来实现,也可以用java代码来实现,由于目前没有那么多时间,只记录xml实现的方法:以后在记录Java实现的代码. 通过Shape gradient标签来实现 首先 ...

  3. Android Shape Drawable Resources

    本文主要介绍Drawable Resources的一种,Shape Drawable Resources的使用.其他Drawable类似 经常需要自己设置某个view的背景,比如类似新浪微博客户端微博 ...

  4. Python数据分析 | Numpy基本属性介绍

    Numpy基本属性介绍 目录 numpy介绍 常用基本属性 numpy介绍 NumPy(Numerical Python)是Python的一种开源的数值计算扩展.这种工具可用来存储和处理大型矩阵,比P ...

  5. Unity3D基础入门之粒子系统(属性介绍+火焰粒子系统案例制作)

    Unity3D基础入门之粒子系统(属性介绍+火焰粒子系统案例制作) 一.属性介绍 1.主面板Particle System (1)Duration:粒子发射周期 图中,5.00即在发射5秒后进入下一个 ...

  6. tf.shape()

    tf.shape tf.shape( input, name=None, out_type=tf.int32 ) 1 2 3 4 5 例如: 将矩阵的维度输出为一个维度矩阵 import tensor ...

  7. AICompiler动态shape编译框架

    AICompiler动态shape编译框架 移动互联网的兴起,不仅产生了海量数据,也对人机交互有了新的定义.企业如何动态处理不同规格图片数据,如何更灵活处理不同长度的对话语料等等,提升企业运营效率,争 ...

  8. HarmonyOS shape 的使用

    HarmonyOS shape 吐槽 在说这个shape使用之前先吐槽一下,好像目前版本对shape 总感觉很别扭,因为shape画好之后无法直接看到效果,只能回到布局中才能看到效果,所以大家在使用s ...

  9. Android shape 绘制左右 或者上下的渐变色

    shape 绘制的渐变色使用的 gradient 默认是从左向右的方向绘制的 比如 <?xml version="1.0" encoding="utf-8" ...

最新文章

  1. 菜鸟学PureMVC记
  2. Spring+Hibernate整合
  3. 为什么用lazy启动eclipse的时候,插件activator的start自动被调用
  4. extjs chart无法在panel中显示_手绘风格的 JS 图表库:Chart.xkcd
  5. RN子组件获取redux数据
  6. 2018-11-06 VSAN常见故障
  7. 剑指 Offer II 028. 数组中出现次数超过一半的数字
  8. svn创建分支和合并
  9. AEJoy —— 表达式之弹性(韧性)模拟详解【JS】
  10. 计算机屏显内容超过屏幕了,电脑屏幕超出工作频率范围修复方法
  11. Linux学习简单教程和常用命令(小白学习法)
  12. 第一篇:呼叫中心发展史
  13. 未来10年什么行业发展比较好?
  14. JS三元表达式动态改变显示内容
  15. Linux各发行版的前世今生
  16. LINGO实例,优化问题1
  17. CLI 发行uni-app到微信小程序,如何不打开微信开发者工具去进行小程序发布?
  18. 简述中断处理的6个步骤_微机原理简答题
  19. 楼天城之做男人就过八道题(第一题…
  20. c语言贪吃蛇游戏报告,贪吃蛇游戏c程序报告.docx

热门文章

  1. LeetCode:916. Word Subsets - Python
  2. qt vs调试pdb文件下载
  3. 武林外传-经典台词-郑昀整理版本
  4. mouseover事件
  5. 计算机函数left的用法,EXCEL中的left函数怎么使用?
  6. DIV+CSS-01
  7. 【阿尔萨斯】 Arthas的使用
  8. 5mm方格本打印模板,A4方格本模板(可打印)(最新整理)
  9. war和war exploded的区别
  10. 删除linux引导,如何删除Linux操作系统的启动菜单