2013-04-11 9 views
7

एक सार्वभौमिक प्रोजेक्ट पर अपना हाथ आजमाकर, मैं स्टोरीबोर्ड से पहचानकर्ता द्वारा एक वीसी लोड करना चाहता हूं। स्टोरीबोर्ड तक पहुंचने पर मुहावरे की स्पष्ट जांच से बचने का कोई तरीका है।सार्वभौमिक ऐप में मुख्य स्टोरीबोर्ड प्राप्त करें

यह बदसूरत कोड काम करता है ....

UIStoryboard *storyboard; 

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { 
    storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil]; 
} 
else { 
    storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil]; 
} 

UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"MyViewController"]; 

लेकिन छी। स्ट्रिंग शाब्दिक मुख्य स्टोरीबोर्ड देखने के लिए काफी कठिन है (सुनिश्चित नहीं है कि प्रोजेक्ट मुख्य स्टोरीबोर्ड सेटिंग क्यों नहीं सहेज सकता है ताकि ऐप्स [UIStoryboard mainStoryboard] कह सकें;) लेकिन स्पष्ट मुहावरे चेक एक पुल बहुत दूर है।

क्या कोई छिपी हुई खुफिया जानकारी है (रेटिना डिस्प्ले का समर्थन करने वाले "@ 2x" छवि प्रत्यय के तुलनीय) जो इस कोड को साफ़ कर सकता है?

उत्तर

16

मान लें कि आप एक और दृश्य नियंत्रक के अंदर से पोस्ट कोड निष्पादित कर रहे हैं, तो आप हमेशा [self storyboard] के माध्यम से वर्तमान स्टोरीबोर्ड प्राप्त कर सकते हैं, जहां स्वयं UIViewController का कोई उदाहरण है।

+1

धन्यवाद। एक तीर से दो शिकार। इच्छा है कि मैं दो बार ऊपर उठ सकता हूं। – danh

+0

धन्यवाद डेसमंड! – Oritm

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