, LayerDrawable
<代码>,& lt; layer-list> 代码标签可是设置LayerDrawable,一种有层次的可拉的叠加效果,& lt; layer-list>可以包含多个& lt; item>标签,
,每个& lt; item>代表一个可拉的。你们;item>可以通过左,右,顶部,底部设置左右上下的偏移量,& lt; item>可以应用一个图片,也可以是一个形状
,我们来模仿实现微信的聊天输入框:
,先设置绿色的背景:
& lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比; & lt; layer-list xmlns: android=" http://schemas.android.com/apk/res/android "比; & lt; item> & lt;形状android:形状=熬匦巍北? & lt;固体android:颜色=" @android:颜色/holo_green_light”/比; & lt;/shape> & lt;/item> & lt;/layer-list>
,再叠加一层白色,留出侧面绿色线条的高度:
& lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比; & lt; layer-list xmlns: android=" http://schemas.android.com/apk/res/android "比; & lt; item> & lt;形状android:形状=熬匦巍北? & lt;固体android:颜色=" @android:颜色/holo_green_light”/比; & lt;/shape> & lt;/item> & lt;项目android:底部=? dp”比; & lt;形状android:形状=熬匦巍北? & lt;固体android:颜色=癅android:颜色/白色/比; & lt;/shape> & lt;/item> & lt;/layer-list>
再铺上一层白色,覆盖已经设置好的背景,留出底部和侧面的线条,中间的一层其实就是为了留出两边的绿色线框的高度:,
& lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比; & lt; layer-list xmlns: android=" http://schemas.android.com/apk/res/android "比; & lt; item> & lt;形状android:形状=熬匦巍北? & lt;固体android:颜色=" @android:颜色/holo_green_light”/比; & lt;/shape> & lt;/item> & lt;项目android:底部=? dp”比; & lt;形状android:形状=熬匦巍北? & lt;固体android:颜色=癅android:颜色/白色/比; & lt;/shape> & lt;/item> & lt;项目 android:底部=" 1 dp " android:左=" 1 dp " android:对=" 1 dp " android:形状=熬匦巍北? & lt; shape> & lt;固体android:颜色=癅android:颜色/白色/比; & lt;/shape> & lt;/item> & lt;/layer-list>