Вот все связанный код (это многомодульное приложение):
Код для моего графа навигации:
Код: Выделить всё
fun NavGraphBuilder.settingsGraph(navController: NavController) {
navigation(
startDestination = SettingsGraphDestination.InitialScreen.route,
route = SETTINGS_GRAPH_ROUTE
) {
composable(
route= SettingsGraphDestination.InitialScreen.route,
enterTransition = {
fadeIn(tween(durationMillis = CommonConstants.NAVIGATION_ANIMATION_DURATION_MILLIS))
},
exitTransition = {
fadeOut(tween(durationMillis = CommonConstants.NAVIGATION_ANIMATION_DURATION_MILLIS))
}
) {
SettingsScreen(
navController = navController,
onPhoneNumberSettingScreenClicked = {
navController.navigate(
SettingsGraphDestination.PhoneNumberAdjustment.route
)
},
onStepStrideAdjustmentScreenClicked = {
navController.navigate(
SettingsGraphDestination.StepStrideAdjustment.route
)
}
)
}
}
}
Код: Выделить всё
NirvanaScaffold(
navController = navController,
screenTitle = "تنظیمات"
) {
Column(
modifier = Modifier
.fillMaxSize()
.background(nirvanaScreenBackgroundBrush)
.verticalScroll(rememberScrollState())
) {
Spacer(modifier = Modifier.weight(0.1f))
ButtonsArea(
onSubscriptionButtonClicked = { onSubscriptionScreenClicked() },
onChangePhoneNumberButtonClicked = { onPhoneNumberSettingScreenClicked() },
onChangeStepStrideButtonClicked = { onStepStrideAdjustmentScreenClicked() },
onChangeWeightButtonClicked = { onWeightAdjustmentScreenClicked() }
)
Spacer(modifier = Modifier.weight(1f))
}
}
}
Код: Выделить всё
dashboardGraph(
navController = navController,
nestedGraphs = {
settingsGraph(navController = navController)
},
navigateToSettingsGraph = {navController.navigateToSettingsGraph()}
)
}
Подробнее здесь: https://stackoverflow.com/questions/775 ... n-behavior