Figma में, वैरिएंट का इस्तेमाल, इनके अलग-अलग वैरिएंट को ग्रुप करने के लिए किया जाता है एक ही कॉम्पोनेंट को एक साथ जोड़ना, जैसे कि अलग-अलग स्थितियां या साइज़. रिले प्रिज़र्व कॉम्पोनेंट के वैरिएंट, जब उसे कोड में बदला जाता है. इस सेक्शन में, हम जानेंगे कि जानें कि रिलेटिव डिज़ाइन में अलग-अलग वैरिएंट को कैसे हैंडल करता है.
शुरुआत की जगह
![पेड़ के वैरिएंट वाला न्यूज़ कार्ड](https://developer.android.com/static/develop/ui/compose/tooling/relay/images/design-variants/news-card-with-variants.png?authuser=4&hl=hi)
हम एक Figma फ़ाइल से शुरुआत करेंगे, जिसमें समाचार कार्ड कॉम्पोनेंट तीन वैरिएंट:
- हीरो-आइटम सबसे अहम समाचार लेख के लिए है
- लेख-आइटम किसी सामान्य लेख के लिए है
- ऑडियो-आइटम उस लेख के लिए है जिसे पढ़ने के बजाय सुना जाता है
Figma का उदाहरण कॉपी करें
इस ट्यूटोरियल के लिए, हम उदाहरण के तौर पर मौजूदा Figma फ़ाइल का इस्तेमाल करेंगे. पक्का करें कि आपने अपने Figma खाते में लॉग इन किया है.
- अपने कंप्यूटर पर HeyNews.fig डाउनलोड करें.
Figma में, फ़ाइल ब्राउज़र पर जाएं. बाईं ओर के साथ, ड्राफ़्ट. आपको एक + आइकॉन दिखेगा — + आइकॉन पर क्लिक करें. इसके बाद, इंपोर्ट करें पर क्लिक करें. अभी-अभी डाउनलोड की गई helloNews.fig फ़ाइल चुनें. इसमें लग सकता है 10 सेकंड से लेकर एक मिनट तक कहीं भी.
इंपोर्ट की गई फ़ाइल को Figma में खोलें.
यूज़र इंटरफ़ेस (यूआई) पैकेज बनाएं
Figma प्लगिन के लिए रिले हमारे कॉम्पोनेंट में ज़्यादा जानकारी जोड़ता है, ताकि हम जो हमारे कॉम्पोनेंट का इस्तेमाल अपने कोड में करेंगे.
- अपनी फ़ाइल में Figma प्लगिन के लिए रिले खोलें (मेन्यू बार में: प्लगिन > रिले Figma के लिए). शुरू करें पर क्लिक करें.
कॉम्पोनेंट चुनें और यूज़र इंटरफ़ेस (यूआई) पैकेज बनाएं पर क्लिक करें.
यूज़र इंटरफ़ेस (यूआई) पैकेज चुनने के बाद, खास जानकारी वाले बॉक्स में जानकारी जोड़ें. इसके लिए उदाहरण के लिए: “समाचार कार्ड का कॉम्पोनेंट, जिसे किसी सूची में खबरों से जुड़े आइटम दिखाने के लिए बनाया गया हो”.
नाम वाला वर्शन सेव करें
अब आपने यूज़र इंटरफ़ेस (यूआई) पैकेज बना लिया है, तो अपने कॉम्पोनेंट को तैयार करें, ताकि उसे डेवलपमेंट टीम के साथ शेयर किया जा सके.
- अगर Figma Relay प्लगिन नहीं खुला है, तो उसे खोलें.
- डेवलपर के साथ शेयर करें पर क्लिक करें.
- डेवलपर के साथ शेयर करें स्क्रीन से, वर्शन इतिहास सेव करें सेक्शन में नए वर्शन का नाम और जानकारी डाली जा सकती है.
सेव करें पर क्लिक करें.
उदाहरण का टाइटल: शुरुआती नया कार्ड
उदाहरण के तौर पर दी गई जानकारी: पहली बार खबरों वाले लेख में दिए गए आइटम को दोहराना
Android Studio प्रोजेक्ट डाउनलोड करें
इस ट्यूटोरियल के Android Studio वाले हिस्से के लिए, हम पहले से कॉन्फ़िगर Android Studio प्रोजेक्ट. इस प्रोजेक्ट में ऐसा ऐप्लिकेशन है जो समाचार रिपोर्ट दिखाता है लेख पढ़ें.
- नमस्तेNews.zip फ़ाइल का सैंपल डाउनलोड करें.
- फ़ाइल को अनज़िप करने के लिए उस पर दो बार क्लिक करें, जिससे एक फ़ोल्डर बन जाएगा नमस्तेNews. इसे अपने होम फ़ोल्डर में ले जाएं.
- Android Studio पर वापस जाएं. फ़ाइल > खोलें, अपने होम पर जाएं फ़ोल्डर में, HeyNews चुनें. इसके बाद, खोलें पर क्लिक करें.
- प्रोजेक्ट खोलने पर, Android Studio आपसे पूछेगा कि क्या आपको प्रोजेक्ट. Trust Project पर क्लिक करें.
Android Studio में इंपोर्ट करें
अब प्रोजेक्ट में हमारा Figma कॉम्पोनेंट इंपोर्ट करें.
Figma पर वापस जाकर, News कार्ड ट्यूटोरियल Figma फ़ाइल का यूआरएल कॉपी करें. हम हमारे कॉम्पोनेंट इंपोर्ट करने के लिए इस यूआरएल का इस्तेमाल करें. इसके सबसे ऊपर दाएं कोने में Figma के साथ, शेयर करें बटन पर क्लिक करें. इसके बाद, खुलने वाले डायलॉग बॉक्स में, लिंक कॉपी करें.
Android Studio में, HelloNews प्रोजेक्ट पर स्विच करें. फ़ाइल > नया > इंपोर्ट करें यूज़र इंटरफ़ेस (यूआई) पैकेज... ऐक्सेस किया जा सकता है.
अपनी Figma फ़ाइल का यूआरएल चिपकाएं और आगे बढ़ें पर क्लिक करें.
- फ़ाइल को फ़ेच करने के बाद (इसमें कुछ समय लग सकता है), पूरा करें.
क्लिक करें
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है उसका इस्तेमाल कैसे करें. इसमें एक मिनट या कुछ ज़्यादा समय लग सकता है.
ऐप्लिकेशन और कॉम्पोनेंट
Android व्यू में, खोलें
app/java/com/example/hellonews/ui/home/HomeScreen.kt
, आपको ऐप्लिकेशन की एक झलक दिखेगी, जिसमें सादा लेख प्रारूप, जिसमें ऑडियो कहानियों के ऊपर प्रिंट कहानियां शामिल हैं.app/java (generated)/com/example/hellonews/newscard/NewsCard.kt
खोलें. यह यह हमारे Figma कॉम्पोनेंट के लिए जनरेट किया गया Jetpack Compose कोड है. झलक देखते हैं, तो हम देख सकते हैं कि Newscard कॉम्पोनेंट के तीन वैरिएंट में Figma से कोड में अनुवाद किया गया है. आइए, कोड के बारे में गहराई से जानते हैं.View
के ईनम की मदद से, हम यह चुन पाते हैं कि इस कॉम्पोनेंट के लिए कौनसा वैरिएंट इस्तेमाल करना है. ईनम का नाम और उसकी वैल्यू, हमारे Figma कॉम्पोनेंट. इसका इस्तेमाल हमारे Newscard मेंview
पैरामीटर में किया जाता है कंपोज़ेबल.Newscard कंपोज़ेबल को यूज़र इंटरफ़ेस (यूआई) पैकेज से जनरेट किया गया. इसमें
View
टाइप का पैरामीटर, जो समाचार कार्ड के वैरिएंट को इस पर सेट करता है: इंस्टैंशिएट करें.package com.example.myapplication.newscard import ... // Design to select for NewsCard enum class View { HeroItem, ArticleItem, AudioItem } /** * News card component intended to display news items for a list. * * This composable was generated from the UI Package 'news_card'. * Generated code; do not edit directly */ @Composable fun NewsCard( modifier: Modifier = Modifier, view: View = View.HeroItem ) {...}
अगला
हम अभी Newscard का इस्तेमाल करने के लिए तैयार नहीं हैं. कॉम्पोनेंट को यह पता नहीं होता कि कैसे का इस्तेमाल करें. इसलिए, अगर हमें इस कॉम्पोनेंट को जोड़ना था, लेकिन अब हमें बस एक ही तरह की समाचार मिलनी चाहिए दोहराया गया. हमें यह बताने का एक तरीका चाहिए कि Newscard के कौनसे हिस्से भरे जाने चाहिए के साथ कैसे काम करता है.
इस सेक्शन में, हम Newscard कॉम्पोनेंट में कॉन्टेंट पैरामीटर जोड़ेंगे.
आपके लिए सुझाव
- ध्यान दें: JavaScript बंद होने पर लिंक टेक्स्ट दिखता है
- कॉन्टेंट पैरामीटर
- Scroll
- व्यू में कंपोज़ की सुविधा इस्तेमाल करना