2013-09-25 7 views
8

मैं आईओएस स्टोरीबोर्ड के साथ टाइफून का उपयोग कैसे करूं जहां नियंत्रक सिस्टम द्वारा अंतर्निहित उत्पन्न होते हैं? क्या मुझे readyFegSegue तरीकों के लिए कुछ विशेष करना होगा?टाइफून: असेंबली और स्टोरीबोर्ड-निर्मित व्यू कंट्रोलर

उत्तर

7

यह TyphoonStoryboard

साथ बहुत ही सरल bootstrapping Typhoon in your plist करके, हमेशा की तरह UILaunchStoryboardName और UIMainStoryboardFile के साथ है, आंधी है कि सभी स्टोरीबोर्ड उन TyphoonStoryboard का एक उदाहरण हैं सुनिश्चित करेगा। जैसा कि आप एक सामान्य स्टोरीबोर्ड के रूप में उपयोग करेंगे, अतिरिक्त लाभ के साथ निर्भर करता है कि निर्भरता आपके TyphoonAssembly वर्ग (एसएस) में परिभाषाओं के अनुसार इंजेक्शन दी जाएगी।

वैकल्पिक रूप से, आप निर्दिष्ट कर सकते हैं कि प्रत्येक व्यू कंट्रोलर के लिए कौन सी परिभाषा का उपयोग किया जाना चाहिए। इसके लिए, स्टोरीबोर्ड में 'टाइफूनकी' रनटाइम विशेषता का उपयोग करें। अन्यथा नियंत्रक वर्ग से मेल खाने वाली परिभाषा का उपयोग किया जाएगा। उदाहरण:

example

इस सुविधा के लिए प्रलेखन here है।

8

बैकलॉग, में टाइफूनस्टोरीबोर्ड घटक है, हालांकि इसे अभी तक लागू नहीं किया गया है (नीचे अपडेट देखें)।

वर्तमान में एक-इंजेक्शनप्रॉपर्टीज है: घटक कारखाने पर विधि जिसका उपयोग आप तत्काल होने के बाद किसी घटक पर निर्भरता इंजेक्शन लागू करने के लिए कर सकते हैं, पूर्व। कहानी बोर्ड द्वारा।

अभी के लिए, आप UIStoryboard उपवर्ग और -injectProperties कह सकते हैं:

– instantiateInitialViewController 
– instantiateViewControllerWithIdentifier: 

उदाहरण::

- (id)instantiateViewControllerWithIdentifier:(NSString *)identifier { 
    id instantiatedViewController = [super instantiateViewControllerWithIdentifier:identifier]; 
    [[TyphoonComponentFactory defaultFactory] injectProperties:instantiatedViewController]; 
    return instantiatedViewController; 
} 

अद्यतन:

अधिभावी द्वारा दृश्य नियंत्रक पर TyphoonStoryBoard एकीकरण अब पूरा हो गया है (लंबित दस्तावेज), ए मास्टर के लिए प्रतिबद्ध है। यह आने वाले हफ्तों में टाइफून 2.0 के हिस्से के रूप में जारी किया जाएगा।

+0

शानदार लगता है। क्या टाइफून स्टोरीबोर्ड-आधारित व्यू कंट्रोलर को और अधिक टेस्टेबल बना देगा? उनके साथ टीडीडी के बारे में सोचने में दर्द हो रहा है। – fatuhoku

+0

@fatuhoku हां, डीआई के सभी नियमित लाभ: आसान परीक्षण, आसान रखरखाव, अच्छा संयोजन, आदि –

+1

अहके। यदि मैं कोई सुझाव दे सकता हूं, और यही है, तो ढांचे को उपयोगकर्ता मार्गदर्शिका में बहुत अधिक उदाहरण की आवश्यकता है। उदाहरण के लिए स्टोरीबोर्ड भ्रमित हैं, क्योंकि वास्तविक कोड में, रनटाइम तय करता है कि वीसी का क्या भार है, और प्रभावी रूप से आपके लिए दृश्य नियंत्रक निर्भरताओं का प्रबंधन करता है। यह स्पष्ट नहीं है कि टाइफून इस प्रक्रिया को कैसे रोकता है, अगर बिलकुल नहीं। मैंने देखा है कि आपको टाइफून फैक्ट्री या कुछ ऐसे की जरूरत है, लेकिन क्या ऐसा होने वाले सीगों के बारे में जागरूकता है? – fatuhoku

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