美文网首页高级UI
Android shape详解

Android shape详解

作者: 匠人plus | 来源:发表于2019-08-15 14:25 被阅读0次

1.样式

矩形(rectangle)、椭圆形(oval)、线性形状(line)、环形(ring)

2.属性

corners:圆角属性

gradient:渐变属性

padding:边距属性

size:大小属性

solid:填充属性

stroke:描边属性

当样式为ring情况下,会有以下属性:

innerRadius:内环的半径

innerRadiusRatio:浮点型,以环的宽度比率来表示内环的半径;

thickness:环的厚度;

thicknessRatio:浮点型,以环的宽度比率来表示环的厚度;

useLevel:boolean值,如果当做是LevelListDrawable使用时值为true,否则为false。

innerRadiusRatiothicknessRatio配合使用可以绘制适配各个屏幕大小的圆形。公式为:

\frac{1}{innerRadiusRatio} +\frac{1}{thicknessRatio} =\frac{1}{2}


3.其他用法

shape常用语构造selector,类似以下

xml/color

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:color="@color/white" android:state_pressed="true"></item>

    <item android:color="@color/color_tab_red"></item>

</selector>

xml/drawable

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="true">

        <shape android:shape="rectangle">

            <solid android:color="@color/color_tab_red"/>

            <corners android:radius="8dp"/>

        </shape>

    </item>

    <item >

        <shape android:shape="rectangle">

            <solid android:color="#f4f4f4"/>

            <corners android:radius="8dp"/>

        </shape>

    </item>

</selector>

相关文章

网友评论

    本文标题:Android shape详解

    本文链接:https://www.haomeiwen.com/subject/bskzjctx.html