标签:
shape--> shape属性:
rectangle: 矩形,默认的形状,可以画出直角矩形、圆角矩形、弧形等
solid: 设置形状填充的颜色,只有android:color一个属性
android:color 填充的颜色
padding: 设置内容与形状边界的内间距,可分别设置左右上下的距离
一:
rectangle:
solid: 设置形状填充的颜色,只有android:color一个属性
padding: 设置内容与形状边界的内间距,可分别设置左右上下的距离
gradient: 设置形状的渐变颜色,可以是线性渐变、辐射渐变、扫描性渐变
corners: 设置圆角,只适用于rectangle类型,可分别设置四个角不同半径的圆角,当设置的圆角半径很大时,比如200dp,就可变成弧形边了
stroke: 设置描边,可描成实线或虚线。
<?xml version="1.0" encoding="utf-8"?>
<!-- android:shape指定形状类型,默认为rectangle -->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<!-- padding设置内间距 -->
<padding
android:bottom="4dp"
android:left="4dp"
android:right="4dp"
android:top="4dp" />
<!-- size设置形状的大小 -->
<size
android:width="40dp"
android:height="40dp" />
<!-- gradient设置渐变 -->
<gradient
android:endColor="#000000"
android:gradientRadius="40dp"
android:startColor="#FFFFFF"
android:type="radial" />
</shape>
引用的代码:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_margin="8dp"
android:text="6"
android:textSize="20sp"
android:textColor="@android:color/black"
android:background="@drawable/bg_oval_with_gradient" />
三: line line主要用于画分割线,是通过stroke和size特性组合来实现的,先看虚线的代码:<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line">
<!-- 实际显示的线 -->
<stroke
android:width="1dp"
android:color="#2F90BD"
android:dashGap="2dp"
android:dashWidth="4dp" /> 有dashwidth 和 dashgap 表示的虚线
<!-- 形状的高度 -->
<size android:height="4dp" />
</shape>
画线时,有几点特性必须要知道的:
首先,shape根元素有些属性只适用于ring类型,先过目下这些属性吧:
如果想让ring 转起来 那么在外边加上一层 rotate就行了
<ProgressBar
android:layout_width="100dp"
android:layout_height="100dp"
android:indeterminateDrawable="@drawable/rotate_shape" />
标签:
原文地址:http://www.cnblogs.com/jeno-song/p/5545313.html