Junior — Middle
Ինչպես կարելի է իրականացնել էկրանների փոխ switchման մեխանիզմը Jetpack Compose-ում?
sobes.tech AI
Պատասխան 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("Մանրամասների էկրան")
}
Այս մոտեցումը հեշտացնում է էկրանների stack-ը և նավիգացիայի պարամետրերը կառավարելը։