在开发中经常遇到需要各种样式的shape定义来实现一些圆角、渐变等UI效果。所以每一次都需要自己去定义,然而这个过程会产生很多问题,比如命名规范就是一个很头疼的问题。而且文件多了以后也会增加包体积。可复用的概率又很低。所以需要一个通用样式的shape。今天他来了。。。
首先,在values中定义一个xml:shape_asster.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="IconFontView">
<attr name="fontAsset" format="string"/>
<attr name="android:textColor"/>
<attr name="android:text"/>
</declare-styleable>
<declare-styleable name="CheckableImageButton">
<attr name="android:checked"/>
</declare-styleable>
<declare-styleable name="ShadowCardView">
<attr name="android:background"/>
<attr name="android:padding"/>
<attr name="android:shadowColor"/>
<attr name="shadow_radius" format="dimension"/>
</declare-styleable>
<declare-styleable name="CommonShapeView">
<!--shape模式-->
<attr name="cs_shapeMode" format="enum">
<enum name="rectangle