Android学习之shape属性

来源:互联网 发布:考试宝典怎么样知乎 编辑:程序博客网 时间:2024/05/22 15:35

1)stroke

描述:stroke边框效果,相当于html中的盒子模型的border

属性:android:width边框的宽度

           android:color边框的颜色

如果想要边框为虚线:则需要dashWidth和dashGap这两个属性一起用

android:dashWidth设置的是蓝色虚线的长度,值为0时,表示的是实线,值大于0表示的是虚线,值越大,下图蓝色虚线长度越长

dashGap设置的是虚线之间间隔的长度,值越大,间隔越大。如下图所示


2)padding

   描述:内部边距,即内容与边的距离

   属性: android:left  左内边距

               android:top   上内边距

               android:right  右内边距

               android:bottom 下内边距


而android:padding="10dp"则是将四个方向都设置为距边框10dp。

3)corners(此属性要与上面stroke属性一起使用,使其四个角变成圆角)

  描述: corners: 圆角

  属性:  android:radius  半径

               android:topLeftRadius  左上角半径

               android:topRightRadius  右上角半径

               注意一下两个属性比较不同:

               android:bottomLeftRadius 右下角半径

               android:bottomRightRadius 左下角半径


半径所设的值越大,表示的圆也就越大,如图片所示。

4)solid 

    描述:内部填充

    属性  android:color 填充颜色

将其边框内部填充你所设置的颜色

5)gradient

    描述: 渐变色

    属性: android:startColor 起始颜色, android:endColor    结束颜色

               

                android:angle     渐变角度(PS:当angle=0时,渐变色是从左向右。然后逆时针方向转,当angle=90时为从下往上。angle必须为45的整数倍)

                android:type       渐变类型(取值:linear、radial、sweep)

                   linear  线性渐变,这是默认设置

                  radial  放射性渐变,以开始色为中心。

                   sweep   扫描线式的渐变。

                android:centerColor  渐变中间颜色,即开始颜色与结束颜色之间的颜色

                android:useLevel 如果要使用LevelListDrawable对象,就要设置为true。设置为true无渐变。false有渐变色

                android:gradientRadius  渐变色半径.当 android:type="radial" 时才使用。单独使用 android:type="radial"会报错。

                android:centerX   渐变中心X点坐标的相对位置

                android:centerY   渐变中心Y点坐标的相对位置

6)size 

    描述:size: 大小

    属性: android:width   表示形状的宽度

                android:height 表示形状的高度









0 0