Sobes.tech
Junior — Middle

Jetpack Compose'da ekranlar o'rtasida o'tish mexanizmini qanday amalga oshirish mumkin?

sobes.tech AI

AIdan javob

Jetpack Compose'da ekranlar orasidagi o'tish odatda Navigation Compose kutubxonasi yordamida amalga oshiriladi, bu esa turli Composable'lar orasidagi navigatsiyani boshqaradi.

Asosiy bosqichlar:

  1. NavHost yaratish, unda NavController bo'lib, navigatsiya grafigini aniqlash.
  2. Har bir ekran uchun yagona marshrut (route) bilan composable aniqlash.
  3. navigate() chaqirishi orqali ekranlar orasida o'tish uchun NavController'dan foydalanish.

Misol:

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("Tafsilotlar ekraniga o'tish")
    }
}

@Composable
fun DetailsScreen() {
    Text("Tafsilotlar ekran")
}

Bu yondashuv ekranlar yiginini va navigatsiya parametrlarini oson boshqarish imkonini beradi.