안드로이드/Android View

[Android] DrawerLayout 숨겨있다가 액션 취하면 나타나는 기능

코딩하는후운 2022. 11. 4. 16:10
반응형

DrawerLayout 숨겨있다가 액션 취하면 나타나는 기능

-평소에는 화면의 한쪽에 숨겨져 있다가 사용자가 액션을 취하면 화면에 나타는 기능을 만들 수 있게 해주는 레이아웃

1.
DrawerLayout자체가 화면에 나타나거나 사라지는 동작을 수행하는것으로 오해하면 안됩니다.
DrawerLayout에 추가된 자식이 DrawerLayout의 영역 안에서 Drawer(서랍)와 같은 동작을 수행하도록 만들어 주는것이다.

그리고 DrawerLayout에 추가된 모든 자식들이 Drawer로 동작하는 것이 아니라는 사실에도 주의해야 합니다.
자식들 중 layout_gravity속성 값을 가지지 않은 자식은 기본적으로 표시되는 주화면으로 취급되고,
layout_gravity속성 값을 가진 자식만이 Drawer로써 동작하는 것이다.
또한 Drawer가 어느 방향에서 열릴지는 layout_gravity에 지정된 값(left or right)에 의해 결정됩니다.


2. 기본 레이아웃 구성
DrawerLayout에 최소 두개의 자식이 추가되어야 한다.
하나는 Drawer역할을 수행할 화면이고, 다른 하나는 Drawer가 닫혀있는 상태에서 표시될 주화면입니다.


Drawer크기
Drawer의 너비는 DrawerLayout보다 작은 고정(fixed)값으로, Drawer의 높이는 DrawerLayout의 높이와 같은 값으로 지정하는게 일반적입니다.

 

 


DrawerLayout & CoordinatorLayout & AppBarLayout

CoordinatorLayout안에 ConstraintLayout 넣은 후
-app:layout_behavior="@string/appbar_scrolling_view_behavior"

선언 해주면 appbar 밑으로 레이아웃이 내려감.

 

 

 

 

참조 :

https://recipes4dev.tistory.com/139

 

안드로이드 드로어레이아웃. (Android DrawerLayout)

1. 화면의 특정 영역에서 동적으로 열리고, 닫히는 사용자 인터페이스. 통상적으로, "안드로이드 레이아웃"이라고 하면, 화면의 전체 또는 일부에 자신의 영역을 확보한 다음, 정해진 규칙에 따

recipes4dev.tistory.com

 

반응형