Androidx.Navigation с Compose: пройти аргументы через вложенные графики с TypeSafeAndroid

Форум для тех, кто программирует под Android
Anonymous
Androidx.Navigation с Compose: пройти аргументы через вложенные графики с TypeSafe

Сообщение Anonymous »

Это мой навигационный график < /p>
NavHost(navController, startDestination = Splash) {

composable { SplashScreen(navController) }

navigation(startDestination = Editor) {

composable { navBackStackEntry->

val data= navBackStackEntry.toRoute() // right way crash app
val path = navBackStackEntry.arguments?.getString("path") // workaround works fine

....
}

< /code>
сериализованные объекты: < /p>
@Serializable
object Splash

@Serializable
data class Home(val path: String)

@Serializable
object Editor

< /code>
Проблема: < /p>
При навигации с экрана Splash to Home с использованием NavController.navigate (route = home («Мой путь»)), я не могу получить доступ к аргументу пути в композиционном редакторе. Не пункт назначения навигации в первую очередь (это дом, который есть), поэтому невозможно напрямую извлекать аргументы от редактора, даже если аргумент пути доступен в пакете. Пока я могу получить к нему доступ через Navbackstackentry.arguments? .GetString («Путь»), мне интересно, есть ли более надежное решение.>

Подробнее здесь: https://stackoverflow.com/questions/794 ... ith-typesa

Вернуться в «Android»