2011-12-08 18 views
137

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

+0

मुझे नहीं पता कि एटलाइन क्या है, और मुझे संदेह है कि फेसबुक टाइमलाइन के साथ इसका कोई लेना-देना नहीं है कि टैग – iandotkelly

+1

को संदर्भित करता है, ये दो अलग-अलग प्रश्न हैं, जॉर्ज? साथ ही, जब आप '.timeline' कहते हैं, तो क्या आप [सहेजी गई फ़ाइल के संस्करण] के बारे में बात कर रहे हैं (http://developer.apple.com/library/ios/#recipes/xcode_help-versioneditor/VersionTimeline.html)? –

+0

आपके यहां दो अलग-अलग प्रश्न थे, इसलिए मैंने इसे केवल एक तक परिष्कृत किया। पहले सवाल को यहां कुछ बार पूछा गया है, जैसे कि [एक्सकोड पर विंडो-आधारित एप्लिकेशन नहीं मिल सकता] (http://stackoverflow.com/questions/8005546/cannot-find-window-based-plication-on- एक्सकोड), इसलिए मैंने स्टोरीबोर्डिंग प्रश्न पर ध्यान केंद्रित करने के लिए उस भाग को हटा दिया। –

उत्तर

101

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

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

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

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

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

आरंभ करने के लिए आप इसे tutorial देख सकते हैं।

+5

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

+11

आदर्श रूप से, हां। 1 .स्टोरीबोर्ड फ़ाइल = 'एन' नहीं। .xib फ़ाइलों का। –

+2

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

22

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

मुझे लगता है कि आपका मतलब "टाइमलाइन" के बजाय "स्टोरीबोर्ड" है। स्टोरीबोर्ड आपको अपने अनुप्रयोगों के सभी विचारों और उनके साथ कैसे जुड़ते हैं, दृश्यमान रूप से मानचित्रण करने की अनुमति देता है। यदि आप स्टोरीबोर्ड से शुरुआत कर रहे हैं, तो WWDC 2011 वीडियो here में स्टोरीबोर्ड का परिचय है। आईट्यून्स-यू पर 2011 Stanford iOS course आईओएस 5-विशिष्ट और कवर स्टोरीबोर्ड और भी बहुत कुछ है।

11

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

+1

शायद सबसे उपयोगी उत्तर। – Munib

8

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

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

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

1

XIB:

1) xib फ़ाइलें एक भी UIView के साथ किया जाता है।

2) xib में जटिल ऑटो-लेआउट को कार्यान्वित करना बहुत मुश्किल है।

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

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

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

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

स्टोरीबोर्ड

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

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

3) आमतौर पर तेज़ और कम स्मृति आवंटित करता है।

4) यह आईओएस 5 से पहले संगत नहीं है।

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

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

सबसे अच्छा जवाब मैंने देखा है: Xib Vs Storyboard in iOS

0

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

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

संबंधित मुद्दे