AppBarLayout折叠时候的阴影

别裁伪体亲风雅,转益多师是汝师。这篇文章主要讲述AppBarLayout折叠时候的阴影相关的知识,希望能为你提供帮助。
【AppBarLayout折叠时候的阴影】最近在项目中遇到一个需求,AppBarLayout在完全展开时没有阴影,在完全收缩时展示阴影,这个功能可以通过设置StateListAnimator的轻松的实现。
首先,在res/animator目录下建立appbar_elevation.xml文件,如下:

< ?xml version="1.0" encoding="utf-8"?> < selector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> < !--折叠状态下的阴影--> < item app:state_collapsed="true"> < objectAnimator android:propertyName="elevation" android:valueTo="5dp" android:valueType="floatType" /> < /item> < !--展开状态下的阴影--> < item app:state_collapsed="false"> < objectAnimator android:propertyName="elevation" android:valueTo="0dp" android:valueType="floatType" /> < /item> < /selector>

然后在布局文件里设置AppBarLayout的stateListAnimator属性,如下:
< android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="256dp" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" android:background="@color/white" android:stateListAnimator="@animator/appbar_elevation" >

 

    推荐阅读