对于 Android 5.0 及更高版本:AppBarLayout 自动在布局中提供/给出阴影。
您还可以通过以下方式增加 AppBarLayout 的高度app:elevation="4dp"
.
对于 Pre-Lollipop :您可以使用以下链接:https://github.com/vipulasri/Toolbar-Elevation-Pre-Lollipop https://github.com/vipulasri/Toolbar-Elevation-Pre-Lollipop
Note:工具栏还支持提升它,使用android:elevation="4dp"
新更新: In 应用兼容 v24.0.0,您不能使用以下方式将高度设置为 AppBarLayoutsetElevation()
and app:elevation
因为这些已被弃用。
你必须使用stateListAnimator
属性现在设置海拔。
注意:将持续时间设置为1ms in StateListAnimator
为了避免立面图绘制延迟.
AppBarLayout 标高更改在 appCompat v24.0.0 上延迟 https://stackoverflow.com/questions/37960282/appbarlayout-elevation-change-is-delayed-on-appcompat-v24-0-0
appbar_always_elevated.xml in 动画师-v21下的文件夹res目录。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<objectAnimator android:propertyName="elevation"
android:valueTo="8dp"
android:valueType="floatType"
android:duration="1"/>
</item>
</selector>
在应用栏布局中:
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="300dp"
android:fitsSystemWindows="true"
android:stateListAnimator="@animator/appbar_always_elevated"
android:theme="@style/AppTheme.AppBarOverlay">
</android.support.design.widget.AppBarLayout>