Sobes.tech
Junior — Middle

Ինչպես կարելի է իրականացնել էկրանների փոխ switchման մեխանիզմը Jetpack Compose-ում?

sobes.tech AI

Պատասխան AI-ից

Jetpack Compose- ում էկրանների միջև անցումը սովորաբար իրականացվում է Navigation Compose գրադարանի միջոցով, որը կառավարում է տարբեր Composable-ների միջև նավիգացիան:

Հիմնական քայլեր՝

  1. Ստեղծել NavHost, որը պարունակում է NavController և սահմանում է նավիգացիայի գրաֆիկը:
  2. Յուրաքանչյուր էկրանին սահմանել composable՝ յուրահատուկ երթուղի (route) հետ:
  3. Օգտագործել 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-ը և նավիգացիայի պարամետրերը կառավարելը։