
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">
요약
- 배경색을 투명하게 설정하면서 그림자 제거:
- android:background="@android:color/transparent"
- android:elevation="0dp"
- 추가적으로 그림자를 완전히 제거하기 위해:
- android:outlineProvider="none"
이와 같은 설정으로 AppBarLayout에 투명 배경을 주면서도 그림자를 완전히 제거할 수 있습니다.
반응형
'Projects > ATeen' 카테고리의 다른 글
[Android/Kotlin] open 메서드를 활용한 다형성 구현 (2) | 2024.08.26 |
---|---|
[Android/Kotlin] filterIsInstance와 firstOrNull을 사용한 개선 (0) | 2024.08.12 |