在不使用 android:elevation 属性的情况下设置View阴影

1. 使用 layer-list + shape 创造阴影背景图


<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    
    <item>
        <shape android:shape="rectangle">
            <gradient
                android:angle="270"
                android:endColor="#00000000"
                android:startColor="#77434242"
                android:type="linear" />
            <size android:height="3dp" />
        shape>
    item>
    
    
    <item android:bottom="@dimen/dp_12">
        <shape android:shape="rectangle">
            <solid android:color="#fff" />
        shape>
    item>
layer-list>

    

2. 使用带透明阴影的切图

作为背景的特点: 1. View高度变大后 阴影区域被拉伸,按比例放大(过大也会比较丑)
2. 渐变颜色变化较小
3. 不存在重复绘制

你可能感兴趣的:(android综合)