.Xib फ़ाइल और .storyboard के बीच अंतर क्या है?


159

क्या कोई सरल शब्दों में समझा सकता है .xib और .storyboard के बीच का अंतर?


मुझे नहीं पता कि क्या एक .timeline है, और मुझे लगता है यह फेसबुक समय के साथ कुछ नहीं है कि टैग को संदर्भित करता है
iandotkelly

1
क्या ये दो अलग-अलग प्रश्न हैं, जॉर्ज? इसके अलावा, जब आप कहते हैं .timeline, क्या आप सहेजे गए फ़ाइल के संस्करणों के बारे में बात कर रहे हैं ?
माइकल Dautermann

आपके यहाँ दो अलग-अलग प्रश्न थे, इसलिए मैंने इसे केवल एक के लिए परिष्कृत किया। पहला प्रश्न यहाँ पर कुछ समय के लिए पूछा गया है, जैसे कि XCode पर विंडो-आधारित एप्लिकेशन नहीं मिल सकता है , इसलिए मैंने स्टोरीबोर्डिंग प्रश्न पर ध्यान केंद्रित करने के लिए उस हिस्से को हटा दिया।
ब्रैड लार्सन

1
यह भी इसी तरह का प्रश्न देखें, स्टोरीबोर्ड का उपयोग कब करें और XIB का उपयोग कब करें । आईओएस 8 और एक्सकोड 6. के लिए अपडेट सहित उत्कृष्ट विस्तृत उत्तर हैं
बेसिल बोर्क

जवाबों:


115

Apple ने "storyboarding"अपने ऐप में स्क्रीन को सरल और बेहतर बनाने के लिए iOS5 SDK की अवधारणा पेश की । आप अभी भी .xibविकास के तरीके का उपयोग कर सकते हैं ।

प्री-स्टोरीबोर्ड, प्रत्येक UIViewControllerके .xibसाथ जुड़ा हुआ था। Storyboardदो चीजें हासिल करता है:

  1. .storyboardऐप में आपके सभी स्क्रीन के लिए अनिवार्य रूप से एक सिंगल फाइल है और यह स्क्रीन के प्रवाह को दिखाता है। आप seguesइस तरह से स्क्रीन के बीच / बदलाव जोड़ सकते हैं । तो, यह कई स्क्रीन को प्रबंधित करने के लिए आवश्यक बॉयलरप्लेट कोड को कम करता है।

  2. एक ऐप में फ़ाइलों की कुल संख्या को कम करता है।

Storyboardअनचेक किए गए "यूज़ स्टोरीबोर्ड" विकल्प को छोड़कर एक नई परियोजना बनाते समय आप इसका उपयोग करने से बच सकते हैं ।

आप इस ट्यूटोरियल को शुरू करने के लिए संदर्भित कर सकते हैं ।


5
तो स्टोरीबोर्डिंग .xib फ़ाइलों की आवश्यकता को प्रतिस्थापित करता है?
विलियम शाम

16
आदर्श रूप से, हाँ। 1 .storyboard फ़ाइल = 'n' नहीं। .xib फ़ाइलें।
सागर हटकर

2
विचारों के बीच बदलाव के बारे में क्या है, हालांकि? मुझे पता है कि वहाँ बहस कर रहे हैं, लेकिन वहाँ कुछ ही अलग शैलियों के तर्क हैं। मुझे लगता है कि आप अभी भी पहले की तरह ही विचारों के बीच संक्रमण कर सकते हैं, लेकिन यदि आप एक सेग का उपयोग नहीं कर रहे हैं, तो यह स्टोरीबोर्ड में अजीब लगेगा, है ना? इस पर आपके क्या विचार हैं?
नॉटगैग

1
उस स्थिति में, मेरा मानना ​​है कि नैविगेशनकंट्रोलर्स खेल में आएंगे?
सागर हटकर

मजेदार तथ्य: मैं इस पोस्ट का उपयोग अपने (सीमित) आईओएस को दिखाने के लिए करता हूं: डी
सागर हेटकर

22

हां, आप अभी भी iOS 5 के लिए विंडो-आधारित एप्लिकेशन बना सकते हैं। यदि आप "खाली प्रोजेक्ट" टेम्पलेट का उपयोग करते हैं, तो आप देखेंगे कि ऐप प्रतिनिधि में आपके लिए एक विंडो बनाई गई है। वहां से आप XIB फ़ाइलों को सामान्य या एक नए स्टोरीबोर्ड के रूप में जोड़ सकते हैं।

मैं आपको "टाइमलाइन" के बजाय "स्टोरीबोर्ड" का मतलब मान रहा हूं। स्टोरीबोर्ड आपको अपने अनुप्रयोगों में दृश्य के सभी, दृष्टिगत रूप से मानचित्रण करने की अनुमति देता है और वे कैसे परस्पर संबंध रखते हैं। यदि आप स्टोरीबोर्ड से शुरुआत कर रहे हैं, तो WWDC 2011 के वीडियो में स्टोरीबोर्ड का परिचय यहां दिया गया है2011 स्टैनफोर्ड आईओएस पाठ्यक्रम पर iTunes यू भी आईओएस 5-विशिष्ट और कवर स्टोरीबोर्ड और अधिक है।


15

एक स्टोरीबोर्ड एक कैनवास की तरह है जहां आप अपनी सभी .xib फाइलें डालते हैं। अब आपके पास कोई भी .xibs नहीं है, आपके पास बस सीधे अपने कैनवास पर व्यू कंट्रोलर हैं।


2
संभवतः सबसे उपयोगी उत्तर।
मुनिब

9

स्टोरीबोर्ड Xcode 4.2 के रिलीज होने के बाद से उपलब्ध एक नई सुविधा है। यह यूजर इंटरफेस बनाने और डिजाइन करने के लिए iOS डेवलपर के लिए एक नया तरीका प्रदान करता है। स्टोरीबोर्ड की शुरुआत से पहले, यह विशेष रूप से शुरुआती के लिए नेविगेशन (और टैब) इंटरफ़ेस बनाने के लिए कठिन है। प्रत्येक इंटरफ़ेस को एक अलग xib फ़ाइल में संग्रहीत किया जाता है। इसके शीर्ष पर, आपको सभी इंटरफेस को एक साथ जोड़ने के लिए कोड लिखना होगा और यह बताना होगा कि नेविगेशन कैसे काम करता है।

स्टोरीबोर्ड के साथ, सभी स्क्रीन एक ही फ़ाइल में संग्रहीत हैं। यह आपको ऐप के लिए दृश्य प्रतिनिधित्व का एक वैचारिक अवलोकन प्रदान करता है और आपको दिखाता है कि स्क्रीन कैसे जुड़े हुए हैं। स्टोरीकोड लेआउट करने के लिए Xcode एक बिल्ट-इन एडिटर प्रदान करता है। आप केवल बिंदु और क्लिक का उपयोग करके विभिन्न स्क्रीन के बीच संक्रमण (जिसे सेग के रूप में जाना जाता है) को परिभाषित कर सकते हैं। इसका मतलब यह नहीं है कि आपको उपयोगकर्ता इंटरफ़ेस के लिए कोड लिखने की आवश्यकता नहीं है। लेकिन स्टोरीबोर्ड आपको लिखने के लिए आवश्यक कोड की मात्रा को काफी कम कर देता है।

स्रोत: http://www.appcoda.com/use-storyboards-to-build-navigation-controller-and-table-view/


2

XIB:

1) Xib फाइलें एकल UIView के साथ उपयोग की जाती हैं।

2) एक्सिब में जटिल ऑटो-लेआउट को लागू करना बहुत मुश्किल है।

3) यह स्टोरीबोर्ड और शांत धीमी की तुलना में अधिक मेमोरी का उपयोग करता है।

4) यह iOS5 और उसके बाद से संगत है

5) आप विभिन्न XIB का उपयोग करके विभिन्न भाषाओं और देशों के लिए स्थानीयकरण कर सकते हैं।

6) कई उपकरणों का समर्थन करने के लिए एक ही Xib का उपयोग करना मुश्किल है।

स्टोरीबोर्ड

1) आप अपने सभी दृश्यों जैसे व्यू कंट्रोलर, नव कंट्रोलर, टैबबार कंट्रोलर आदि को सिंगल स्टोरीबोर्ड में लेआउट कर सकते हैं।

2) आप आसानी से ऑटो लेआउट का उपयोग कर सकते हैं जो उनकी स्थिति को परिभाषित करने और आकार देने वाले तत्वों के बीच गणितीय संबंधों को परिभाषित करता है।

3) आमतौर पर तेज और कम मेमोरी आवंटित करता है।

4) यह iOS 5 से पहले संगत नहीं है।

5) "डायनामिक" और "प्रोटोटाइप" कोशिकाओं का उपयोग आसानी से किया जा सकता है।

6) एक छोटे से मध्यम स्क्रीन वाले ऐप्स के लिए उपयोग करने के लिए स्टोरीबोर्ड सबसे अच्छा है।

सबसे अच्छा उत्तर मैंने देखा है: आईओएस में एक्सब बनाम स्टोरीबोर्ड


0

XIB और स्टोरीबोर्ड का उपयोग उपयोगकर्ताओं के लिए इंटरफेस बनाने के लिए किया जाता है।

एक महत्वपूर्ण बिंदु है, एक दृश्य बनाने के लिए xibs का उपयोग किया जाता है (यह xib फ़ाइल के शीर्ष पर एकल फ़ाइल स्वामी है), लेकिन दृश्य-संपर्क के मामले में, कई स्क्रीन जोड़े जा सकते हैं और इसके प्रवाह की निगरानी भी की जा सकती है (यह है अलग फ़ाइल के मालिक)।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.