제이슨의 개발이야기
[안드로이드(코틀린)]Navigation component 란 무엇일까? 본문
Jetpack 과 함께 소개된 안드로이드 네비게이션은 Fragment 와 Activity간 구현을 심플하고 안정적으로 이동할 수 있도록 도와주는 컴포넌트 입니다
저는 기존 안드로이드 개발을 할때 안드로이드 네비게이션을 이용하지 않고 각 프래그먼트 이동을 직접 트랜잭션 을 통해 이동했는대
네비게이션을 사용하면 좀 더 심플하고 안정적으로 이동할 수 있어서 너무 만족한 컴포넌트 입니다
참고로 네비게이션 컴포넌트는 하나의 액티비티에 여러개의 프래그먼트를 UI로 사용할 때 사용합니다!
저는 네비게이션 컴포넌트 의 기초 사용법에 대해서 설명하겠습니다!! (쉬움)완전기초!!!
네비게이션 컴포넌트를 사용 하기 위해서는
일단 gradle 에서
navigation 을 Implementation 해줍니다 !
그리고 필요로 한 프레그먼트를 만들어 줍니다!
그리고 메인 activity를
아래 이미지 수정해줍니다
그리고 res 폴더에 navigation 패키지를 만들어주고 nav_graph 파일을 만들어줍니다
그리고 나서 nav_graph 에서 Design탭을 누른다음 각 UI의 시나리오에 맞게 연결시켜 줍니다!
처음에는 Fragment가 안나올겁니다 그래서 위에 이미지를 보면 + 모양이 있는대 그걸 누르면 그전에 자신이 만들어 놓은 Fragment가 있고 추가 하면 해당 화면에 나타날겁니다!
추가 하고 나서 각 프레그먼트의 오른쪽 동그라미를 눌러서 UI 시나리오 대로 연결 시켜줍니다!
그리고 나서 Fragment 에서 navController 를 연결시키고 화면 이동이 필요할 때
navController.navigate() 를 사용하면 이동합니다!
nav_graph에 프래그먼트를 연결 시켜놓으면 이미지 처럼 action_mainFragment_to_questionFragment 라는 id가 생깁니다
그래서 navigate(R.id.action~~~) 하시면 화면이 이동합니다!!
해당 프로젝트는 유튜버 Code with Joyce님의 유튜브를 보면서 코틀린 공부를 한 프로젝트 이고 밑에 링크 타고 가시면 해당 프로젝트 하는 과정을 보실 수 있습니다!
'안드로이드' 카테고리의 다른 글
[안드로이드 코틀린] 코루틴을 이용해서 간단한 okhttp 통신 (0) | 2021.03.18 |
---|---|
[안드로이드] 안드로이드 SHA1 , SHA-256 인증서 발급 방법! 매우쉬움 (0) | 2021.03.12 |
안드로이드 Ui 개발 어떤 레이아웃이 더 효율적일까? 현업에서는? (0) | 2021.03.06 |
안드로이드 fragment 생명주기 ! (0) | 2021.03.04 |
안드로이드 서비스란 무엇일까?? 백그라운드?? (0) | 2021.03.03 |