Jetpack Navigation(2)

g_one212·2021년 8월 18일
0

저번 포스팅과 이어서,

navigation.xml을 만든후 Design버튼을 누르면 밑에와 같은 화면이 나온다!


탐색 그래프에는 사용 가능한 목적지가 표시된다! 이 목적지간 사이의 화살표(파란색 부분)을 action이라고 부른다.

클릭해서 어떠한 속성이 있는지 확인할 수 있다!

이번엔 Text버튼을 클릭하면

XML이 다음과 같이 나온다!

<navagation>은 모든 탐색 그래프의 루트 노드입니다.
<navagation>에는 <activity>또는<fragment>요소로 표시된 목적지가 하나 이상 포함됩니다.
<app:startDestination>은 사용자가 앱을 처음 열 때 기본적으로 실행되는 대상을 지정하는 속성입니다.

android:id는 XML 및 코드의 다른 위치에서 참조하는데 사용할 수 있는 프래그먼트의 id를 정의합니다.

android:name은 목적지로 이동할 때 인스턴스화할 프래그먼트의 정규화된 클래스 이름을 선언합니다

tools:layout은 편집기에서 표시해야하는 레이아웃을 지정합니다.

BottomNavigationView를 사용하는 Navigation


android:name="androidx.navigation.fragment.NavHostFragment" 및 app:defaultNavHost="true"는 시스템 뒤로 버튼을 NavHostFragment에 연결합니다.

app:navGraph="@navigation/mobile_navigation"는 NavHostFragment를 네비게이션 그래프와 연결합니다! 이 네비게이션 그래프는 사용자가 이동할 수 있는 대상을 모두 NavHostFragment에서 지정합니다

마지막으로 사용자가 버튼을 클릭하는 등의 작업을 할 때 탐색 명령어를 트리거해야한다! NavController라는 특수 클래스는 NavHostFragment에서 프래그먼트 교체를 트리거한다.

flow_step_one_dest로 이동.

이동하려면 목적지 또는, ID를 전달해야합니다.

NavHostFragment와 연결된 NavController 객체를 가져오는 방법은 몇 가지가 있습니다. Kotlin에서는 탐색 명령어를 프래그먼트 내에서 호출하는지 활동에서 호출하는지 뷰에서 호출하는지에 따라 다음 확장 함수 중 하나를 사용하는 것이 좋습니다.

profile
이해는 뇌를 흥분시킨다

0개의 댓글