美工没时间给图,简单的图让我们自己写,哭啊! 所以具体研究了一下shape的使用,保存下

在drawable文件夹中创建一个shape的资源文件,其中shape有四个属性(rectangle、oval、line、ring) 这四个属性是用来定义图形的形状对应(矩形、椭圆、线、圆环)

除了ring属性外,别的三个属性直接定义就可以得到对应的图形。但使用ring属性,需要定义一些属性参数,才能生效。

  1. android:shape=["rectangle" | "oval" | "line" | "ring"]
  2. shape的形状,默认为矩形,可以设置为矩形(rectangle)、椭圆形(oval)、线性形状(line)、环形(ring)
  3. 下面的属性只有在android:shape="ring时可用:
  4. android:innerRadius         尺寸,内环的半径。
  5. android:innerRadiusRatio    浮点型,以环的宽度比率来表示内环的半径,
  6. android:thickness           尺寸,环的厚度
  7. android:thicknessRatio      浮点型,以环的宽度比率来表示环的厚度,例如,如果android:thicknessRatio="2",
  8. android:useLevel            boolean值,如果当做是LevelListDrawable使用时值为true,否则为false.

图形的形状定义出来了,下面就需要定义一些图形的属性了,颜色、边框、渐变色、圆角、size、padding

1.Corners(圆角)

<corners    //定义圆角  
    android:radius="dimension"      //全部的圆角半径  
    android:topLeftRadius="dimension"   //左上角的圆角半径  
    android:topRightRadius="dimension"  //右上角的圆角半径  
    android:bottomLeftRadius="dimension"    //左下角的圆角半径  
    android:bottomRightRadius="dimension" />    //右下角的圆角半径

Corners标签是用来字义圆角的,其中radius与其它四个并不能共同使用。

Android:radius:定义四个角的的圆角半径。

其它四个是逐个字义每个角的圆角半径。

2.solid(颜色)

<solid android:color="#ffff00"/>

直接定义你需要的颜色使用就可以了,没什么花哨的

3.gradient(渐变色)   可以定义为两色渐变和三色渐变,及渐变样式

<gradient
    android:type=["linear" | "radial" | "sweep"]    //共有3中渐变类型,线性渐变(默认)/放射渐变/扫描式渐变  
    android:angle="integer"     //渐变角度,必须为45的倍数,0为从左到右,90为从上到下  
    android:centerX="float"     //渐变中心X的相当位置,范围为0~1  
    android:centerY="float"     //渐变中心Y的相当位置,范围为0~1  
    android:startColor="color"   //渐变开始点的颜色  
    android:centerColor="color"  //渐变中间点的颜色,在开始与结束点之间  
    android:endColor="color"    //渐变结束点的颜色  
    android:gradientRadius="float"  //渐变的半径,只有当渐变类型为radial时才能使用  
    android:useLevel=["true" | "false"] />  //使用LevelListDrawable时就要设置为true。设为false时才有渐变效果

需要注意的一点是,在构造放射性渐变时,要加上android:gradientRadius属性(渐变半径),即必须指定渐变半径的大小才会起作用,下面列出这三个渐变方式的shape代码,供大家参考:

首先有三种渐变类型,分别是:linear(线性渐变)、radial(放射性渐变)、sweep(扫描式渐变)    看下三种渐变对应的效果

4.angle(仅对线性渐变有效)

android:angle="integer"     //渐变角度,必须为45的倍数,0为从左到右,90为从上到下     切记只对线性渐变有效

5.stroke(描边属性,可以定义描边的宽度、颜色、虚实线等)

<stroke       
    android:width="dimension"   //描边的宽度      直接用  dp值就可以了
    android:color="color"   //描边的颜色  
    // 以下两个属性设置虚线  
    android:dashWidth="dimension"   //虚线的宽度,值为0时是实线  
    android:dashGap="dimension" />      //虚线的间隔

6.size和padding基本上不用,在xml布局文件中可以直接设置

通过上述属性、大家可以直接定义出需要的图形出来。

时间: 2024-08-25 18:38:33

美工没时间给图,简单的图让我们自己写,哭啊! 所以具体研究了一下shape的使用,保存下的相关文章

没时间看。先记下。跟之前已经写好程序比对下。

using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using mshtml; namespace WindowsApplication2 { /// /// Form1 的摘要说明. /// public class Form1 : System.Windows.Forms

一步一步拆解一个简单的iOS轮播图(三图)

导言(可以不看): 不吹不黑,也许是东半球最简单的iOS轮播图拆分注释(讲解不敢当)了(tree new bee).(一句话包含两个人,你能猜到有谁吗?提示:一个在卖手机,一个最近在卖书)哈哈... 我第一次项目中需要使用轮播图的时候我是用的别人写好的一个轮子,那个轮播封装很多东西,包括比如可以设置pageControl的位置,可以传图片url或本地图片,缓存网络图片等等.但是我觉得没必要搞那么复杂,我喜欢简单并足够做事的东西.现在有时间便想自己把它拆解一下.看了一些简书上一些作者写的关于轮播图

UML动态模型图简单介绍

UML动态模型图描述了系统动态行为的各个方面,包括用例图.序列图.协作图.活动图和状态图.下面就每种图做一个简单介绍: 用例图 用例图描述系统外部的执行者与系统提供的用例之间的某种联系.所谓用例是指对系统提供的功能的一种描述.执行者是使用用例的人或外部系统,二者之间的联系描述了“谁使用哪个用例”.用例图着重于从系统外部执行者的角度来描述系统需要提供哪些功能,并指明该执行者是谁.在用例图中,椭圆表示用例,小人表示执行者.下图所示为一个普通用户进入某系统的用例图,该图描述了当普通用户进入系统时,“普

[游戏模版7] Win32 最简单贴图

>_<:this is the first using mapping. >_<:There will be introducing how to do: First load bitmap picture return handle give hbmp, as following: hbmp=(HBITMAP)LoadImage(NULL,"bg.bmp",IMAGE_BITMAP,600,450,LR_LOADFROMFILE); there "b

玩转html5(二)----用canvas结合脚本在画布上画简单的图(html5又一强大功能)

在html5中可以使用canvas标签在画布上画图,先直接上代码,这篇文章先简单介绍一下canvas的使用方法,简单画几个圆,矩形,三角形,写字. 在代码中均给出了注释,在这里特别强调的一点是:使用canvas画图时有时候必须beginPath和colsePath,但有时不需要,为了防止出现问题,可以在每次重新画一个图时重新开启路径,画完后关闭路径. 这些代码是在猎豹浏览器上实现的,有些浏览器可能不支持. <!DOCTYPE html> <meta charset="utf-8

转:ECharts图表组件之简单关系图:如何轻松实现另类站点地图且扩展节点属性实现点击节点页面跳转

站点地图不外乎就是罗列一个网站的层次结构,提炼地讲就是一个关系结构图.那么我们如何巧用ECharts图表组件内的简单关系结构图来实现一个站点的地图结构呢?另外如何点击某个节点的时候实现页面跳转呢? 针对上述所提出的疑问,我琢磨了一下ECharts图表组件.找到官方这样的一个适合的简单关系图:http://echarts.baidu.com/doc/example/force1.html 通过观察ECharts图表组件的简单关系图的数据结构,得出我要实现一个站点地图需要做哪些工作: 1.引入ech

如何简单识别图中文字转换到Word

在日常工作中我们会接触到各种格式的文件,图片文件也是经常会使用到的,但是这种问文件格式比较的特殊,一般难以对其进行编辑和修改,如果可以转换到Word中操作起来就很方便了,那又该如何简单识别图中文字转换到Word呢?下面我们就一起来看下吧! 参考工具:迅捷OCR文字识别软件 操作步骤: 1:首先将电脑中的迅捷OCR文字识别软件打开,点击左边导航栏中的极速识别选项卡. 2:进入极速识别板块后,可以点击添加文件按钮将所需识别的图片添加进来,注意在这里支持识别的图片格式. 3:图片添加完成后,将文件识别

UML实践---用例图、顺序图、状态图、类图、包图、协作图

转载:http://www.uml.org.cn/oobject/200901203.asp 面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified Modeling Language?),这篇课程的目的是展示出UML的精彩之处. UML中有九种建模的图标,即: 用例图 类图 对象图 顺序图 协作图 状态图 活动图 组件图 配置图 本课程中的某些部分包含了这些图的细节信息的页面链接.而且每个部分都有一个小问题,测试一下你

UML-用例、类图、类图之间的关系详解

UML UML 一用例图 二类图 一.用例图 用例图的基本概念 由参与者.用例以及用例与用例之间的关系构成的用于描述系统功能的动态视图称为用例图. 参与者的基本概念 参与者(Actor)是指存在于系统外部并直接与系统交互的人.系统或者设备等. 参与者在画图中使用简笔人物画来表示,如下所示: 用例的基本概念 用例是系统为参与者提供的功能. 对于用例的命名,我们可以给用例取一个简单的.概括性的,一般带有动作性的词语. 用例的图形化表示,如下所示: 参与者和用例的关系 如下所示: 用例与用例之间的三个