Назад к вопросам
Junior — Middle
81
Каким образом можно реализовать механизм переключения экранов в Jetpack Compose?
Компании, где спрашивали
ВанТу Ворк
Ответ от нейросети
sobes.tech AI
В Jetpack Compose переключение экранов обычно реализуется с помощью библиотеки Navigation Compose, которая управляет навигацией между различными Composable.
Основные шаги:
- Создать NavHost, который содержит NavController и определяет граф навигации.
- Определить composable для каждого экрана с уникальным маршрутом (route).
- Использовать NavController для перехода между экранами через вызов
navigate().
Пример:
val navController = rememberNavController()
NavHost(navController = navController, startDestination = "home") {
composable("home") { HomeScreen(onNavigate = { navController.navigate("details") }) }
composable("details") { DetailsScreen() }
}
@Composable
fun HomeScreen(onNavigate: () -> Unit) {
Button(onClick = onNavigate) {
Text("Перейти на экран деталей")
}
}
@Composable
fun DetailsScreen() {
Text("Экран деталей")
}
Такой подход позволяет легко управлять стеком экранов и параметрами навигации.