आर्ग्युमेंट भेजना
किसी डेस्टिनेशन को डेटा भेजें।
आर्ग्युमेंट भेजना, CoddyKit पर Android Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Android Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Android Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
स्क्रीन के बीच डेटा भेजना
अक्सर किसी गंतव्य को डेटा चाहिए होता है — जैसे दिखाए जाने वाले आइटम की id। Navigation Compose में आप URL की तरह तर्कों को सीधे मार्ग में शामिल करते हैं।
प्लेसहोल्डर वाला मार्ग
घुँघराले कोष्ठकों का उपयोग करके मार्ग में प्लेसहोल्डर घोषित करें। यहाँ {id} id नाम का तर्क है।
composable("details/{id}") { backStackEntry ->
// read id here
}तर्क का प्रकार घोषित करना
arguments और navArgument की सहायता से नेविगेटर को तर्क का प्रकार बताएँ। यह आपके लिए मान का सत्यापन और रूपांतरण करता है।
composable(
"details/{id}",
arguments = listOf(navArgument("id") { type = NavType.IntType })
) { /* ... */ }NavType
NavType तर्क के डेटा प्रकार की घोषणा करता है — IntType, StringType, BoolType और अन्य। नेविगेटर उसी के अनुसार मार्ग के मान को पार्स करता है।
तर्क पढ़ना
गंतव्य लैम्ब्डा आपको एक backStackEntry देता है। तर्कों को backStackEntry.arguments से पढ़ें।
composable(
"details/{id}",
arguments = listOf(navArgument("id") { type = NavType.IntType })
) { backStackEntry ->
val id = backStackEntry.arguments?.getInt("id") ?: 0
DetailsScreen(id = id)
}मान के साथ नेविगेट करना
स्क्रीन खोलने के लिए प्लेसहोल्डर के स्थान पर वास्तविक मान रखकर मार्ग की स्ट्रिंग बनाएँ।
navController.navigate("details/42")मार्ग को सुरक्षित रूप से बनाना
मान डालने के लिए स्ट्रिंग टेम्पलेट का उपयोग करें। पथ का खंड घोषित मार्ग से बिल्कुल मेल खाना चाहिए।
val itemId = 42
navController.navigate("details/$itemId")वैकल्पिक तर्क
वैकल्पिक तर्कों में ?name=value जैसी क्वेरी-स्ट्रिंग शैली और एक defaultValue का उपयोग होता है। नेविगेट करते समय इन्हें छोड़ा जा सकता है।
composable(
"search?query={query}",
arguments = listOf(navArgument("query") {
defaultValue = ""
})
) { /* ... */ }स्ट्रिंग तर्कों में सावधानी आवश्यक है
स्ट्रिंग तर्क URL के लिए सुरक्षित होने चाहिए। मार्गों के माध्यम से लंबा पाठ या स्लैश भेजने से बचें; इनके लिए id के आधार पर साझा ViewModel या रिपॉज़िटरी का उपयोग करना बेहतर है।
ऑब्जेक्ट नहीं, id भेजें
सर्वोत्तम अभ्यास: मार्ग के माध्यम से एक छोटा पहचानकर्ता (जैसे किसी आइटम की id) भेजें, फिर गंतव्य स्क्रीन पर पूरा ऑब्जेक्ट खोजें। बड़े ऑब्जेक्ट को मार्गों में क्रमबद्ध न करें।
सब कुछ एक साथ
सूची चयनित id भेजते हुए विवरण स्क्रीन पर नेविगेट करती है।
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)
}त्वरित जाँच
मार्ग में id नाम के आवश्यक पूर्णांक तर्क की घोषणा कैसे करते हैं?
पुनरावलोकन
तर्क भेजना:
- मार्ग में
{placeholder}रखें। navArgumentऔरNavTypeसे प्रकार घोषित करें।- इसे
backStackEntry.argumentsसे पढ़ें। - मान को मार्ग में रखकर नेविगेट करें; बड़े ऑब्जेक्ट के बजाय छोटी ids भेजें।
एआई शिक्षक के साथ Kotlin सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 36
- पाठ
- 152
अक्सर पूछे जाने वाले प्रश्न
क्या “आर्ग्युमेंट भेजना” पाठ निःशुल्क है?
हाँ — Android Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “आर्ग्युमेंट भेजना” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Android Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“आर्ग्युमेंट भेजना” में मैं क्या सीखूँगा?
किसी डेस्टिनेशन को डेटा भेजें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Android Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Android Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Android Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।
“आर्ग्युमेंट भेजना” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Android Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Android Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- NavHost सेट करना
- स्क्रीन के बीच नेविगेशन
- आर्ग्युमेंट भेजना
- निचला नेविगेशन