1. 使用 layer-list + shape 创造阴影背景图
<?xml version="1.0" encoding="utf-8"?><!--在不设置海拔的情况下使用的阴影背景-->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!--图层1 显示在下方-->
<item>
<shape android:shape="rectangle">
<gradient
android:angle="270"
android:endColor="#00000000"
android:startColor="#77434242"
android:type="linear" />
<size android:height="3dp" />
</shape>
</item>
<!--图层2 显示在上方-->
<!--bottom: 从bottom向上缩进12dp, 留给下面的层显示-->
<item android:bottom="@dimen/dp_12">
<shape android:shape="rectangle">
<solid android:color="#fff" />
</shape>
</item>
</layer-list>
<!--作为背景的缺点: 1. View高度变大后 阴影区域不会随之按比例放大, 还是12dp
2. View高度变大后 渐变范围也增大, 最下方的12dp因此变淡
3. 图层重叠,重复绘制-->
2. 使用带透明阴影的切图
作为背景的特点: 1. View高度变大后 阴影区域被拉伸,按比例放大(过大也会比较丑)
2. 渐变颜色变化较小
3. 不存在重复绘制
本文介绍了两种创建阴影背景的方法:一是使用layer-list+shape来实现阴影效果,这种方法适用于不需要随View高度变化而调整阴影的情况;二是采用带有透明阴影的切图,这种方式下阴影会随着View的高度变化而自动调整。
3万+

被折叠的 条评论
为什么被折叠?



