본문 바로가기
Projects/ATeen

[Android] AppBarLayout에 그림자가 생기는 문제 해결 방법

by quessr 2024. 7. 25.

AppBarLayout을 사용하면서 배경색을 투명하게 설정하면 그림자가 자동으로 생기는 경우가 있습니다.

이 글에서는 AppBarLayout의 배경을 투명하게 설정하면서도 그림자를 없애는 방법에 대해 다뤄보겠습니다.

문제 상황

다음과 같이 AppBarLayout의 배경색을 투명하게 설정했습니다.

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

 

위와 같이 elevation을 0dp로 설정했지만, 여전히 그림자가 남아있습니다.

해결 방법

그림자를 없애기 위해 AppBarLayout에 outlineProvider 속성을 추가해 줍니다. 이 속성은 뷰의 외곽선을 제공하는데, none으로 설정하면 그림자가 사라집니다.

 

<com.google.android.material.appbar.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/transparent"
    android:elevation="0dp"
    android:outlineProvider="none">

요약

  1. 배경색을 투명하게 설정하면서 그림자 제거:
    • android:background="@android:color/transparent"
    • android:elevation="0dp"
  2. 추가적으로 그림자를 완전히 제거하기 위해:
    • android:outlineProvider="none"

이와 같은 설정으로 AppBarLayout에 투명 배경을 주면서도 그림자를 완전히 제거할 수 있습니다.