实习杂记(20)---Android里面shape定义图形相关属性

<shape>是根节点,一般设置两个属性


         

xmlns:android
StringRequired. Defines the XML namespace, which must be  "http://schemas.android.com/apk/res/android".
这个是必须的,申明Android的命名空间
android:shape
Keyword. Defines the type of shape. Valid values are:(定义这个类型的形状,变量值是:)
这个也是必须的,表示你定义的图形是什么类型,圆,环,直线,长方形

Value Desciption
"rectangle" A rectangle (长方形)that fills the containing View. This is the default shape.(这个是默认的形状)
"oval" An oval (椭圆形)shape that fits the dimensions of the containing View.
"line" A horizontalline that spans the width of the containing View. This shape requires the <stroke> element to define the width of the line.
"ring" A ring shape.

下面是子节点:

第一个子节点:corners
<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.
第二个子节点:gradient
<gradient>
Specifies a gradient color for the shape.指定一个渐变颜色的形状。
这个属性是为了  定义的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
"linear" A linear gradient. This is the default.
"radial" A radial gradient. The start color is the center color.
"sweep" A sweeping line gradient.
android:useLevel
Boolean. "true" if this is used as a  LevelListDrawable.
第三个子节点:padding
<padding>
Padding to apply to the containing View element (this pads the position of the View content, not the shape).适用于包含填充视图元素(这垫的位置,而不是观点内容的形状)
定义的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
<size>
The size of the shape.
定义形状的大小,是指形状本身的大小宽和高,这个跟后面的那个stroke节点有点混,stroke是指线条的宽和高,指的是描边

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
<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
<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.

你可能感兴趣的:(实习)