Hank Li

Sep 4, 2019

5 min read

瞧瞧 Android Navigation Component

雲林 西螺大橋

新選擇 Android Navigation Component

  1. 不容易知道完整 App 流程
  2. 自行控制 Back Stack
  3. UI 狀態管理(Options Menu, Up Button 是否顯示、Bottom Navigation 是否在正確的位置 Highlights 等…)
使用 Navigation Component 的好處

三個主要元件

Navigation graph

Navigation graph

NavHostFragment

NavHostFragment
效果圖

NavController

使用 NavController 做導航

實戰演練

轉場

指定 Destination 透過 NavController 來轉場 (setOnClickListener 後面是大括號)
指定 Destination 透過使用靜態方法轉場 (setOnClickListener 後面是小括號)
透過 NavOption 設定轉場動畫
設定 action (目的地、動畫…)
指定 Action 透過使用靜態方法轉場 (setOnClickListener 後面是小括號)

Fragment 傳參數

classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigationVersion"
apply plugin: 'androidx.navigation.safeargs.kotlin'
設定 argument
gradle 自動產生 Class

結語

Shares Android development and Kotlin programming.

Love podcasts or audiobooks? Learn on the go with our new app.