Android开发Android开发Android技术知识

Android阴影效果

2018-08-07  本文已影响15人  淡淡_孩子气

布局、按钮背景阴影:layer-list

原理:将多个drawable按照顺序层叠在一起显示
效果图

image.png

在drawable文件下新建layer-list的xml文件

阴影边框效果
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <!--第一层阴影-->
    <item>
        <shape android:shape="rectangle">
            <solid android:color="#0F000000" />
            <corners android:radius="10dp" />
        </shape>
    </item>
    <!--第二层前景-->
    <item
        android:bottom="1dp"
        android:left="1dp"
        android:right="1dp"
        android:top="1dp">
        <shape android:shape="rectangle">
            <solid android:color="@android:color/white"/>
            <corners android:radius="10dp" />
        </shape>
    </item>
</layer-list>
image.png
层叠效果
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 第一层阴影 层叠-->
    <item>
        <shape>
            <solid android:color="@android:color/darker_gray" />
            <!--圆角-->
            <corners android:radius="10dp" />
        </shape>
    </item>
    <!-- 第二层前景 层叠-->
    <item>
        <shape>
            <solid android:color="@android:color/white" />
            <corners android:radius="10dp" />
        </shape>
    </item>
</layer-list>
image.png
底部偏移效果
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 第一层阴影 -->
    <item>
        <shape>
            <solid android:color="@android:color/darker_gray" />
            <corners android:radius="10dp" />
        </shape>
    </item>
    <!--第二层前景 底偏移1dp -->
    <item android:bottom="1dp">
        <shape>
            <solid android:color="@android:color/white" />
            <corners android:radius="10dp" />
        </shape>
    </item>
</layer-list>
image.png
右下偏移效果
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 第一层阴影:左偏移2dp,上偏移4dp -->
    <item
        android:left="2dp"
        android:top="4dp">
        <shape>
            <solid android:color="@android:color/darker_gray" />
            <!--圆角-->
            <corners android:radius="10dp" />
        </shape>
    </item>
    <!-- 第二层前景::底偏移4dp,右偏移2dp -->
    <item
        android:bottom="4dp"
        android:right="2dp">
        <shape>
            <solid android:color="@android:color/white" />
            <!--圆角-->
            <corners android:radius="10dp" />
        </shape>
    </item>
</layer-list>
image.png
使用:直接设android:background属性为xml文件

android:background="@drawable/bg_shadow_white"

上一篇 下一篇

猜你喜欢

热点阅读