Bağımsız Değişkenleri Aktarma
Bir hedefe veri gönderin.
Bağımsız Değişkenleri Aktarma, CoddyKit'te ücretsiz bir Android Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Android Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Android Academy kursu toplamda 4 dersten oluşur.
Ekranlar Arasında Veri Geçirme
Bir hedefin görüntülenecek öğenin kimliği gibi verilere ihtiyaç duyduğu sık görülür. Navigation Compose'ta bağımsız değişkenleri bir URL'ye benzer şekilde doğrudan rotaya kodlarsınız.
Yer Tutuculu Rota
Rota içinde süslü ayraçları kullanarak bir yer tutucu tanımlayın. Burada {id}, id adlı bir bağımsız değişkendir.
composable("details/{id}") { backStackEntry ->
// read id here
}Bağımsız Değişken Türünü Tanımlama
arguments ve navArgument kullanarak gezgine bağımsız değişkenin türünü bildirin. Değer sizin için doğrulanır ve dönüştürülür.
composable(
"details/{id}",
arguments = listOf(navArgument("id") { type = NavType.IntType })
) { /* ... */ }NavType
NavType, bağımsız değişkenin veri türünü belirtir: IntType, StringType, BoolType ve diğerleri. Gezgin, rota değerini buna uygun şekilde ayrıştırır.
Bağımsız Değişkeni Okuma
Hedef lambda ifadesi size bir backStackEntry verir. Bağımsız değişkenleri backStackEntry.arguments üzerinden okuyun.
composable(
"details/{id}",
arguments = listOf(navArgument("id") { type = NavType.IntType })
) { backStackEntry ->
val id = backStackEntry.arguments?.getInt("id") ?: 0
DetailsScreen(id = id)
}Bir Değerle Gezinme
Ekranı açmak için yer tutucuyu gerçek değerle değiştirerek rota dizesini oluşturun.
navController.navigate("details/42")Rotayı Güvenli Şekilde Oluşturma
Değeri eklemek için dize şablonlarını kullanın. Yol bölümünün tanımlanan rotayla tamamen eşleşmesini sağlayın.
val itemId = 42
navController.navigate("details/$itemId")İsteğe Bağlı Bağımsız Değişkenler
İsteğe bağlı bağımsız değişkenlerde ?name=value biçiminde sorgu dizesi ve bir defaultValue kullanılır. Gezinme sırasında bunlar atlanabilir.
composable(
"search?query={query}",
arguments = listOf(navArgument("query") {
defaultValue = ""
})
) { /* ... */ }Dize Bağımsız Değişkenlerinde Dikkat Edilecekler
Dize bağımsız değişkenleri URL açısından güvenli olmalıdır. Uzun metinleri veya eğik çizgileri rotalardan geçirmeyin; bunlar için bir kimlikle anahtarlanan ortak bir ViewModel ya da depo kullanmayı tercih edin.
Nesneleri Değil, Kimlikleri Geçirin
En iyi uygulama: rota üzerinden küçük bir tanımlayıcıyı (örneğin bir öğe kimliğini) geçirin, ardından hedef ekranda nesnenin tamamını arayın. Büyük nesneleri rotalara serileştirmeyin.
Hepsini Bir Araya Getirme
Bir liste, seçilen kimliği geçirerek ayrıntılar ekranına gider.
composable("list") {
ListScreen(onItemClick = { id ->
navController.navigate("details/$id")
})
}
composable(
"details/{id}",
arguments = listOf(navArgument("id") { type = NavType.IntType })
) { entry ->
val id = entry.arguments?.getInt("id") ?: 0
DetailsScreen(id = id)
}Hızlı Kontrol
Bir rotada id adlı zorunlu bir tam sayı bağımsız değişkenini nasıl tanımlarsınız?
Özet
Bağımsız değişken geçirme:
- Rotaya bir
{placeholder}ekleyin. - Türü
navArgument+NavTypeile tanımlayın. - Değeri
backStackEntry.argumentsüzerinden okuyun. - Değeri yerine koyarak gezinin; büyük nesneler yerine küçük kimlikler geçirin.
Sıkça Sorulan Sorular
“Bağımsız Değişkenleri Aktarma” dersi ücretsiz mi?
Evet — “Bağımsız Değişkenleri Aktarma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Android Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Android Academy kursu toplamda 4 dersten oluşur.
“Bağımsız Değişkenleri Aktarma” dersinde ne öğreneceğim?
Bir hedefe veri gönderin. Android Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Android Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Android Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Bağımsız Değişkenleri Aktarma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Android Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Android Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- NavHost Kurulumu
- Ekranlar Arasında Gezinme
- Bağımsız Değişkenleri Aktarma
- Alt Gezinme