私のアクティビティレイアウトには、次のNavHostFragment
があります。
<fragment
Android:id="@+id/my_nav_Host_fragment"
Android:layout_height="match_parent"
Android:layout_width="match_parent"
Android:name="androidx.navigation.fragment.NavHostFragment"
app:defaultNavHost="true"
app:navGraph="@navigation/my_nav_graph" />
私の質問は、navGraphをプログラムで設定するにはどうすればよいですか? my_nav_Host_fragment
ビューインスタンスをNavHostFragment
インスタンスに変換するにはどうすればよいですか?
私は解決策を見つけました:
//Setup the navGraph for this activity
val myNavHostFragment: NavHostFragment = my_nav_Host_fragment as NavHostFragment
val inflater = myNavHostFragment.navController.navInflater
val graph = inflater.inflate(R.navigation.my_nav_graph)
myNavHostFragment.navController.graph = graph