android:shape妙用
16lz
2021-01-26
android:shape这个文件或者说属性是控制组件特性特别有用,往上搜刮的内容讲解很迂腐,还是自己上手试了一下才感觉稍微入了门,不多说,上代码。
布局文件送上:<!-- lang: java --><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity" ><Button android:id="@+id/btnTest" android:layout_width="100dp" android:layout_height="100dp" android:text="组件" android:layout_centerInParent="true" />
Button的原始特性如图:![可以看出,照片很呆板][1][1]: http://static.oschina.net/uploads/space/2015/0301/141755_uycv_734421.jpg下面介绍shape里第一个属性:gradient ,这个属性表示,组件内部颜色的渐变,渐变由android:startColor和android:endColor来实现,这个很好理解,另外一个很重要的标签是渐变的角度android:angle,这个比较难,让我们上手看看,
首先Button需要先引用shape.xml这个文件,接下来我设置了四个比较典型的角度:0度,45度,90度,180度,看图。
<gradient android:startColor="#000" //结束渐变颜色黑色 android:endColor="#FFF" //起始渐变颜色白色 android:angle="" //渐变角度 /> ![0度][2]![45度][3]![45度][4]![90度][5]![180度][6]渐变方向和角度的关系已经很明显了。corners:本义是角落,在android里角,就是四个角,这个属性很简单,只有半径这个标签需要记住 <!-- lang: java --> <!-- 组件圆角以及角半径 --><!-- radius后边属性会覆盖android:radius --> <corners android:radius="10dp" android:topLeftRadius="10dp" android:topRightRadius="20dp" android:bottomLeftRadius="30dp" //bottomLeftRadius和bottomRightRadius两个属性是颠倒的,这个需要注意 android:bottomRightRadius="40dp" /> stroke:就是border,边框,搜到的文档都叫描边,云里雾里啊看的,<!-- lang: java --><stroke android:color="#FF0000" //边框颜色 android:width="4dp" //边框宽度 android:dashWidth="4dp" //虚线边框宽度 android:dashGap="10dp" //虚线边框宽度 />
附赠一个外国人的黑技术~
更多相关文章
- 【Android】TabLayout 自定义指示器 Indicator 样式
- Android(安卓)System Property
- Android各种信息的显示
- Android(安卓)ApiDemos示例解析(77):Graphics->RoundRects
- Android(安卓)SDK 22.0.1 引用 android-support-v4 的问题
- Android(安卓)manifest文件中的标签详细介绍
- android的充电图标显示
- Android中TabLayout切换选项背景和修改字体大小
- Android(第三种动画)属性动画完全解析(上),初识属性动画的基本用法