删除AppBarLayout自带阴影

把AppBarLayout的background设置成透明之后,边缘会有阴影效果。elavation设置为0后还是有阴影。

xml 复制代码
<com.google.android.material.appbar.AppBarLayout
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:background="@android:color/transparent"
  android:elevation="0dp">

  <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="50dp">

    <TextView
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:gravity="center"
      android:text="AppBarLayout" />
  </LinearLayout>
</com.google.android.material.appbar.AppBarLayout>

原因

AppBarLayout的阴影是通过R.dimen.design_appbar_elevation来设置的,并没有通过自定义属性来设置。AppBarLayout的源码注释有一个TODO:This should be a customizable attribute,说明未来是google应该会把这个参数改为自定义的属性。

解决方法

在dimens.xml中添加design_appbar_elevation即可,打包的时候自动替换AppBarLayout中的同名资源。

相关推荐
段娇娇15 小时前
Android jetpack Lifecycle(二)原理篇
android·android jetpack
木子予彤1 天前
KRouter:基于 Decompose 的 KMP 声明式路由库
android jetpack
alexhilton6 天前
端侧RAG实战指南
android·kotlin·android jetpack
BoomHe8 天前
Now in Android 架构模式全面分析
android·android jetpack
FunnySaltyFish9 天前
什么?Compose 把 GapBuffer 换成了 LinkBuffer?
算法·kotlin·android jetpack
黄林晴10 天前
告别 Modifier 地狱,Compose 样式系统要变天了
android·android jetpack
alexhilton13 天前
使用FunctionGemma进行设备端函数调用
android·kotlin·android jetpack
用户9851200358313 天前
Compose Navigation 3 深度解析(二):基础用法
android·android jetpack
bqliang13 天前
Compose 媒体查询 (Media Query API) 🖱️👇🕹️
android·android jetpack