- 浏览: 7340882 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1546)
- 企业中间件 (236)
- 企业应用面临的问题 (236)
- 小布Oracle学习笔记汇总 (36)
- Spring 开发应用 (54)
- IBatis开发应用 (16)
- Oracle基础学习 (23)
- struts2.0 (41)
- JVM&ClassLoader&GC (16)
- JQuery的开发应用 (17)
- WebService的开发应用 (21)
- Java&Socket (44)
- 开源组件的应用 (254)
- 常用Javascript的开发应用 (28)
- J2EE开发技术指南 (163)
- EJB3开发应用 (11)
- GIS&Mobile&MAP (36)
- SWT-GEF-RCP (52)
- 算法&数据结构 (6)
- Apache开源组件研究 (62)
- Hibernate 学习应用 (57)
- java并发编程 (59)
- MySQL&Mongodb&MS/SQL (15)
- Oracle数据库实验室 (55)
- 搜索引擎的开发应用 (34)
- 软件工程师笔试经典 (14)
- 其他杂项 (10)
- AndroidPn& MQTT&C2DM&推技术 (29)
- ActiveMQ学习和研究 (38)
- Google技术应用开发和API分析 (11)
- flex的学习总结 (59)
- 项目中一点总结 (20)
- java疑惑 java面向对象编程 (28)
- Android 开发学习 (133)
- linux和UNIX的总结 (37)
- Titanium学习总结 (20)
- JQueryMobile学习总结 (34)
- Phonegap学习总结 (32)
- HTML5学习总结 (41)
- JeeCMS研究和理解分析 (9)
最新评论
-
lgh1992314:
[u][i][b][flash=200,200][url][i ...
看看mybatis 源代码 -
尼古拉斯.fwp:
图片根本就不出来好吧。。。。。。
Android文件图片上传的详细讲解(一)HTTP multipart/form-data 上传报文格式实现手机端上传 -
ln94223:
第一个应该用排它网关吧 怎么是并行网关, 并行网关是所有exe ...
工作流Activiti的学习总结(八)Activiti自动执行的应用 -
ZY199266:
获取不到任何消息信息,请问这是什么原因呢?
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息 -
xiaoyao霄:
DestinationSourceMonitor 报错 应该导 ...
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息
Free and Susan
本文转自:http://blog.csdn.net/qq282133/article/details/7370467
Shape Drawable
这一类的shape定义在xml中
file location:
res/drawable/
filename.xml
The filename is used as the resource ID.(这个文件名作为资源id)
compiled resource datatype:(复杂资源的数据类型)
Resource pointer to a GradientDrawable
.
resource reference(资源参考):
In Java: R.drawable.
filename
In XML: @[
package:]drawable/
filename
syntax:(语法)
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape=["rectangle" | "oval" | "line" | "ring"] >
<corners
android:radius="integer"
android:topLeftRadius="integer"
android:topRightRadius="integer"
android:bottomLeftRadius="integer"
android:bottomRightRadius="integer" />
<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:useLevel=["true" | "false"] />
<padding
android:left="integer"
android:top="integer"
android:right="integer"
android:bottom="integer" />
<size
android:width="integer"
android:height="integer" />
<solid
android:color="color" />
<stroke
android:width="integer"
android:color="color"
android:dashWidth="integer"
android:dashGap="integer" />
</shape>
元素:
<shape>
The shape drawable. This must be the root element.
attributes:
xmlns:android
String. Required. Defines the XML namespace, which must be "http://schemas.android.com/apk/res/android"
.
android:shape
Keyword. Defines the type of shape. Valid values are:(定义这个类型的形状,变量值是:)
Value |
Desciption |
|
A rectangle (长方形)that fills the containing View. This is the default shape.(这个是默认的形状) |
|
An oval (椭圆形)shape that fits the dimensions of the containing View. |
|
A horizontalline that spans the width of the containing View. This shape requires the |
|
A ring shape. |
The following attributes are used only when android:shape="ring"
:
android:innerRadius
Dimension. The radius for the inner part of the ring (the hole in the middle), as a dimension value or dimension resource.
android:innerRadiusRatio
Float. The radius for the inner part of the ring, expressed as a ratio of the ring's width. For instance, if android:innerRadiusRatio="5"
, then the inner radius equals the ring's width divided by 5. This value is overridden by android:innerRadius
. Default value is 9.
android:thickness
Dimension. The thickness of the ring, as a dimension value or dimension resource.
android:thicknessRatio
Float. The thickness of the ring, expressed as a ratio of the ring's width. For instance, if android:thicknessRatio="2"
, then the thickness equals the ring's width divided by 2. This value is overridden by android:innerRadius
. Default value is 3.
android:useLevel
Boolean. "true" if this is used as a LevelListDrawable
. This should normally be "false" or your shape may not appear.
<corners>
Creates rounded corners for the shape. Applies only when the shape is a rectangle.创建圆角的形状。仅适用于当其形状是一个长方形。
attributes:
android:radius
Dimension. The radius for all corners, as a dimension value or dimension resource. This is overridden for each corner by the following attributes.
android:topLeftRadius
Dimension. The radius for the top-left corner, as a dimension value or dimension resource.
android:topRightRadius
Dimension. The radius for the top-right corner, as a dimension value or dimension resource.
android:bottomLeftRadius
Dimension. The radius for the bottom-left corner, as a dimension value or dimension resource.
android:bottomRightRadius
Dimension. The radius for the bottom-right corner, as a dimension value or dimension resource.
Note: Every corner must (initially) be provided a corner radius greater than 1, or else no corners are rounded. If you want specific corners to notbe rounded, a work-around is to use android:radius
to set a default corner radius greater than 1, but then override each and every corner with the values you really want, providing zero ("0dp") where you don't want rounded corners.
<gradient>
Specifies a gradient color for the shape.指定一个渐变颜色的形状。
attributes:
android:angle
Integer. The angle for the gradient, in degrees. 0 is left to right, 90 is bottom to top. It must be a multiple of 45. Default is 0.
android:centerX
Float. The relative X-position for the center of the gradient (0 - 1.0).
android:centerY
Float. The relative Y-position for the center of the gradient (0 - 1.0).
android:centerColor
Color. Optional color that comes between the start and end colors, as a hexadecimal value or color resource.
android:endColor
Color. The ending color, as a hexadecimal value or color resource.
android:gradientRadius
Float. The radius for the gradient. Only applied when android:type="radial"
.
android:startColor
Color. The starting color, as a hexadecimal value or color resource.
android:type
Keyword. The type of gradient pattern to apply. Valid values are:
Value |
Description |
|
A linear gradient. This is the default. |
|
A radial gradient. The start color is the center color. |
|
A sweeping line gradient. |
android:useLevel
Boolean. "true" if this is used as a LevelListDrawable
.
<padding>
Padding to apply to the containing View element (this pads the position of the View content, not the shape).适用于包含填充视图元素(这垫的位置,而不是观点内容的形状)
attributes:
android:left
Dimension. Left padding, as a dimension value or dimension resource.
android:top
Dimension. Top padding, as a dimension value or dimension resource.
android:right
Dimension. Right padding, as a dimension value or dimension resource.
android:bottom
Dimension. Bottom padding, as a dimension value or dimension resource.
<size>
The size of the shape.
attributes:
android:height
Dimension. The height of the shape, as a dimension value or dimension resource.
android:width
Dimension. The width of the shape, as a dimension value or dimension resource.
Note: The shape scales to the size of the container View proportionate to the dimensions defined here, by default. When you use the shape in an ImageView
, you can restrict scaling by setting the android:scaleType
to "center"
.
<solid>
A solid color to fill the shape.
attributes:
android:color
Color. The color to apply to the shape, as a hexadecimal value or color resource.
<stroke>
A stroke line for the shape.
attributes:
android:width
Dimension. The thickness of the line, as a dimension value or dimension resource.
android:color
Color. The color of the line, as a hexadecimal value or color resource.
android:dashGap
Dimension. The distance between line dashes, as a dimension value or dimension resource. Only valid if android:dashWidth
is set.
android:dashWidth
Dimension. The size of each dash line, as a dimension value or dimension resource. Only valid if android:dashGap
is set.
example:
XML file saved at res/drawable/gradient_box.xml
:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#FFFF0000"
android:endColor="#80FF00FF"
android:angle="45"/>
<padding android:left="7dp"
android:top="7dp"
android:right="7dp"
android:bottom="7dp" />
<corners android:radius="8dp" />
</shape>
This layout XML applies the shape drawable to a View:
<TextView
android:background="@drawable/gradient_box"
android:layout_height="wrap_content"
android:layout_width="wrap_content" />
This application code gets the shape drawable and applies it to a View:
Resources res = getResources()
;
Drawable shape = res. getDrawable
(R.drawable.gradient_box);
TextView tv = (TextView)findViewByID(R.id.textview);
tv.setBackground(shape);
gradient -- 对应颜色渐变。 startcolor、endcolor就不多说了。 android:angle 是指从哪个角度开始变。
gradient:渐变
android:startColor和android:endColor分别为起始和结束颜色,android:angle是渐变角度,必须为45的整数倍。
另外渐变默认的模式为android:type="linear",即线性渐变,可以指定渐变为径向渐变,android:type="radial",径向渐变需要指定半径android:gradientRadius="50"。
solid -- 填充。
solid:实心,就是填充的意思
android:color指定填充的颜色
stroke -- 描边。
stroke:描边
android:width="2dp" 描边的宽度,android:color 描边的颜色。
我们还可以把描边弄成虚线的形式,设置方式为:
android:dashWidth="5dp"
android:dashGap="3dp"
其中android:dashWidth表示'-'这样一个横线的宽度,android:dashGap表示之间隔开的距离。
corners -- 圆角。
corners:圆角
android:radius为角的弧度,值越大角越圆。
我们还可以把四个角设定成不同的角度,方法为:
<corners
android:topRightRadius="20dp" 右上角
android:bottomLeftRadius="20dp" 右下角
android:topLeftRadius="1dp" 左上角
android:bottomRightRadius="0dp" 左下角
/>
这里有个地方需要注意,bottomLeftRadius是右下角,而不是左下角,这个不要记错了。
padding -- 定义内容离边界的距离。 与android:padding_left、android:padding_right这些是一个道理。
http://www.cnblogs.com/xiaoQLu/archive/2011/09/14/2176359.html
android:angle网上有各种说法,这里,我说说自己的实验结果,渐变的时候,最原始的,即android:angle=“0”时,是从左到右,按照开始颜色到结束颜色来渲染的,android:angle=“90”是从上到下来渲染的,android:angle=“180”是从右到左来渲染的,android:angle=“360”和android:angle=“0”是一样的,所以这里应该是这样的,渲染时按照最原始的渲染色板(把控件内部看作一块可以绕中心旋转的板子)围绕控件中心来旋转相应的度数,即android:angle里面的值就是所需要旋转的角度,只是这个旋转角度必须是45的整数倍
发表评论
-
[转]年度最实用50款免费Android应用推荐
2012-11-08 16:39 3377据国外媒体报道,有人说Android应用市场比iPhone应用 ... -
GIS的学习(四十五)【转】Integration of the MBTiles format on Android
2012-10-22 17:13 2945转载自 http:/ ... -
GIS的学习(四十四)osmdroid sdcard检查
2012-10-15 16:12 2339在许多应用中使用到sdcard的检查,在osmdro ... -
GIS的学习(四十三)osmdroid基于几个经典代理类
2012-10-15 16:06 2631在osmdroid中给基于位置的代理类如下: pack ... -
Android中PopupWindow的用法(位置、动画、焦点)
2012-10-12 14:12 11522在Android中有很多级别的Window,不同级别的Wind ... -
【转】Android根据分辨率进行单位转换-(dp,sp转像素px)
2012-10-11 09:18 27133Android系统中,默认的单位是像素(px)。也就是说,在没 ... -
GIS的学习(二十九)Osmdroid 离线地图存放位置的研究和详细分析
2012-09-23 11:49 11544在手机通过osmdroid调用离线地图必须放在 ... -
GIS的学习(二十八)Osmdroid相关的开源项目
2012-09-23 11:31 25430osm 数据格式(openstreet map)与Ro ... -
GIS的学习(二十七)通过geoserver的georss访问第三方地图
2012-09-23 00:34 3601在geoserver中如果想调用第三方地图可以采 ... -
android中使用 定时更新界面定时器Timer的使用
2012-09-22 22:09 25523handler的使用 一、Handler的定义: ... -
【转】Android应用程序的自动更新升级(自身升级、通过tomcat) .
2012-09-16 15:03 7364http://blog.csdn.net/mu0206mu/a ... -
GIS的学习(二十七)OGC 的WCS WFS 及WMS 服务
2012-09-11 22:22 12124http://www.gisall.com/?6678/v ... -
GIS的学习(二十六)geotools 使用 部分代码总结
2012-09-11 22:20 5730前段时间的一个项目 本来用ae完成了种种的 查询,空间分析等等 ... -
GIS的学习(二十五)geoserver wms中的各种操作API详细讲解和使用
2012-09-10 17:42 9710官方geoserver中WMS服务中几种操作的API的详细说明 ... -
GIS的学习(二十四)android异步调用geoserver wms中的地图
2012-09-10 17:38 8170在geoserver的客户端通过wms的GetMap实现 ... -
GIS的学习(二十三)geoserver中CQL和ECQL的使用
2012-09-10 16:29 6633以下引用自官方文档: CQL and ECQL¶ CQ ... -
GIS的学习(二十二)osmdroid中添加縮放控件
2012-09-06 23:09 2787package com.geoserver.osmdroid; ... -
GIS的学习(二十一)在osmdroid 地图中添加marker 并添加事件
2012-09-06 22:27 6625我有 osmdroid,overlayswithf ... -
GIS的学习(二十)基于Geoserver的WFS服务与Openlayers实现地理查询
2012-08-30 18:48 11408基于Geoserver发布的wfs服务,与Openlayers ... -
GIS的学习(十九)Geoserver使用添加,删除,查询地图中的POI
2012-08-30 17:28 10354在geoserver自定义的地图中通过geoserver ...
相关推荐
### Android控件美化之Shape的使用 在Android开发过程中,为了提升用户体验,界面美观是非常重要的一个环节。在美化界面的过程中,`Shape`是一种非常实用且灵活的工具,它可以帮助开发者轻松实现各种各样的视觉效果...
在Android开发中,我们经常需要对UI...在Android UI设计中,熟练掌握Shape的使用对于提升应用界面的专业性和美观性至关重要。同时,Shape还能与其他图形元素结合,如Layer-List、Inset等,以实现更复杂的布局和设计。
本文将深入探讨如何在Android中实现ListView的边框圆角美化,以此来达到类似iPhone界面的视觉效果。 首先,我们需要理解ListView的基本结构。ListView是由多个View(通常是ListView项布局,即Item Layout)组成的,...
本文将深入探讨如何在Android中自定义Dialog,并实现界面美化。 首先,创建自定义Dialog的基础步骤是创建一个新的继承自`AlertDialog.Builder`的类。在Java中,我们可以这样实现: ```java public class ...
本文将深入探讨如何使用Shape控件来美化Android应用。 首先,Shape控件是Android中的一个Drawable类型,它可以通过`<shape>`标签在XML中定义。Shape支持多种形状,如矩形、椭圆、线和路径,但最常见的用法是创建...
本篇文章将深入探讨如何构建一个时尚、简洁且具有动态功能的EditText,以及如何在登录界面中利用shape来美化布局。 首先,我们要了解EditText的基本属性。例如,`android:hint`用于设置提示文本,`android:input...
在Android应用开发中,用户界面的设计是至关重要的,特别是...这个过程中,我们深入学习了Android界面设计、状态选择器和形状绘制的使用,以及第三方库的集成和自定义。这样的实践有助于提升应用的整体质量和用户体验。
内容概要:了解基础Android组件的使用,以及shape和selector组件美化。 适合人群:初学Android开发的小萌新,可以利用这个小案例巩固Android基础控件的使用。 能学到什么:可以加深Android布局的使用,以及基础组件...
本教程将详细讲解如何实现Android按钮的美化,包括创建圆角按钮和应用背景渐变效果。 首先,我们要理解Android中按钮的基本结构。在XML布局文件中,我们可以使用`<Button>`标签来定义一个按钮,其基本语法如下: `...
在本文中,我们将深入探讨如何使用`Shape`及其相关的属性来美化Android应用中的控件。 首先,`Shape`是Android图形绘制中的一种基本元素,通常在`res/drawable`目录下的XML文件中定义。一个`Shape`元素可以包含以下...
这篇示例代码将深入讲解如何在Android中使用Shape进行自定义布局的美化。 首先,Shape XML文件通常存放在项目的`res/drawable`目录下。一个基本的Shape元素结构如下: ```xml <shape xmlns:android=...
在Android开发中,UI设计是用户体验的关键因素之一,而按钮的美化则是提升界面美观度的重要环节。扁平化设计作为现代界面设计的主流趋势,它强调简洁、清晰和功能性的结合,摒弃了过多的装饰元素,使得界面更加直观...
例如,使用默认的系统动画资源`@android:drawable/progress_indeterminate_horizontal`。 2. **渐变颜色的旋转进度条** 这种效果使进度条在旋转过程中颜色逐渐变化,可以增加视觉吸引力。实现方法是自定义一个菊花...
网上收集和自己总结的一些android使用资料,比较基础的知识,对全面了解一些知识很不错的 android ListView美化.docx androidshape.docx android_textview.设置文本属性.docx android_设置字体样式.docx ...
总之,Shape和Selector在Android UI设计中扮演着重要角色,它们提供了丰富的自定义能力,让开发者可以创建出富有吸引力且功能多样的用户界面。通过灵活运用这两者,开发者可以提升应用的整体美观性和交互体验。
此Demo可能展示了如何自定义TextView的背景,包括使用shape、bitmap、selector等,让开发者更深入地理解Android的图形绘制和界面美化。 7. **MonitorPhone**: 这可能是一个手机监控或者状态检测的示例,可能包括...
9. 界面美化: 为了提高用户体验,开发者可以进一步改进界面设计,比如调整颜色搭配、添加阴影效果、优化文字排版等。此外,使用Material Design指南可以创建更现代、一致的界面风格。 总的来说,"Android代码-...
在安卓开发过程中,为了美化用户界面,开发者经常需要使用各种自定义的图形元素。其中,`shape`是一种非常实用且灵活的图形资源,它允许开发者轻松地定义包括背景颜色、边框样式、渐变效果等在内的多种视觉元素。...
在Android开发中,进度条是用户界面中常见的一种组件,用于显示任务的完成进度或某个操作的状态。Android系统提供了多种类型的进度条,其中包括线性的、水平的、垂直的,以及我们今天要讨论的拱形进度条和圆形进度条...
综上所述,"android开发使用的透明图片集2" 提供的资源对于Android开发者来说是一份宝贵的素材库,它们可以帮助开发者轻松实现界面美化,提高应用的整体设计质量。合理运用这些图片,可以使应用在视觉效果上脱颖而出...