개발일지

Android in A..Z - CoordinatorLayout (AppBarLayout) 본문

Android (안드로이드)/CoordinatorLayout

Android in A..Z - CoordinatorLayout (AppBarLayout)

강태종 2021. 1. 27. 00:54

AppBarLayout

LinearLayout을 상속받은 View로 Orientation이 Vertical만 지원한다. (Horizontal 사용시 Exception발생)

AppBarLayout은 CoordinatorLayout의 Child View일 때만 정상작동하며 Scroll시 효과를 줄 수 있다.


app:layout_scrollFlags

  • scroll : Scroll에 대한 반응을 주려면 무조건 줘야한다.
  • noScroll : 기본값 어떠한 반응도 하지 않는다.
  • enterAlways : 언제든지 Scroll을 내리면 AppBar가 사라지고, 언제든지 Scroll을 올리면 AppBar가 나타난다.
  • enterAlwaysCollapsed : Scroll을 내리면 min_height만큼 남기고 AppBar가 사라지고 계속 내리면 전부 사라진다. 제일 위에서 Scroll을 올리면 min_hegith만큼 AppBar가 나타나고 계속 올리면 전부 나타난다.
  • exitUntilCollapsed : Scroll을 내리면 무조건 min_height만큼 남긴다.
  • snap : Scroll이 멈췄을 때 View가 표시된 면적에 따라 자석처럼 View를 나타내거나 사라지게한다.

주의사항

AppBarLayout을 사용할 때 AppBarLayout하단에 위치하는 View들은 ScrollingViewBehavior를 지정해야 한다.

=> AppBarLayout의 상태에 따라 Child View의 Offset을 조정하는 코드가 있음

app:layout_behavior="@string/appbar_scrolling_view_behavior"

Git (예제코드)

github.com/KangTaeJong98/Example/tree/main/Android/CoordinatorLayout

 

KangTaeJong98/Example

My Example Code. Contribute to KangTaeJong98/Example development by creating an account on GitHub.

github.com

 

Comments