[Android/안드로이드] navigation 사용하기(1) - 이론 정리
2020. 4. 27. 14:39ㆍ└ Android Architecture Component/Navigation
1. AndroidX 의 Navigation 라이브러리는 ?
Navigation은 사용자가 앱 내의 여러 콘텐츠를 탐색하고, 그곳에 들어갔다 나올 수 있게 하는 상호작용을 의미합니다. Android Jetpack의 컴포넌트인 Navigation은 단순한 버튼 클릭해서 좀 더 복잡한 패턴(앱바, 탐색 창)에 이르기까지 여러 가지 탐색을 구현하도록 도와줍니다. Navigation Component는 기존의 원칙을 준수하여 일관적이고 예측 가능한 사용자 환경을 보장합니다.
즉, 네비게이션은 android Jetpack 의 컴포넌트로 앱 화면 전환을 더 편리하게 구현하고 시각화하여 제공해주는 프레임워크 입니다.
2. Navigation의 장점은?
- 프래그먼트 트랜잭션 처리.
- 기본적으로 '위로'와 '뒤로' 작업을 올바르게 처리.
- 애니메이션과 전환에 표준화된 리소스 제공.
- 딥 링크 구현 및 처리.
- 최소한의 추가 작업으로 탐색 UI 패턴(예: 탐색 창, 하단 탐색) 포함.
- Safe Args - 대상 사이에서 데이터를 탐색하고 전달할 때 유형 안정성을 제공하는 그래프 플러그인입니다.
- ViewModel 지원 - 탐색 그래프에 대한 ViewModel을 확인해 그래프 대상 사이에 UI 관련 데이터를 공유합니다
3. Navigation 구성요소
- Navigation graph : 모든 대상 및 작업을 포함하는 리소스 파일
- NavHostFragment : navigation graph에서 대상을 표시하는 빈 컨테이너
- NavContoller : NavHost에서 앱 탐색을 관리하는 객체입니다. NavController는 사용자가 앱 내에서 이동할 때 NavHost에서 대상 콘텐츠의 전환을 오케스트레이션합니다.
여기까지 이론을 정리해보았습니다 다음 포스트에서는, navigation 구성요소의 사용방법에 대해 알아보겠습니다!
'└ Android Architecture Component > Navigation' 카테고리의 다른 글
[Navigation/네비게이션] startDestination programmatically (0) | 2020.06.04 |
---|---|
[Android/안드로이드] navigation 사용하기(2) - 구성요소 사용방법 (0) | 2020.04.27 |