2014-01-21 38 views
0

我正在創建多個故事板應用程序。根據要求,我在不同的情況下使用不同的故事板。支持它的所有設備,我寫我的代碼是這樣的:如何在multiStoryBoard通用應用程序中爲iPhone和iPad設定相同的故事板名稱?

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) 
{ 
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"blah_iPhone" bundle:nil]; 
    self.window.rootViewController = [storyboard instantiateInitialViewController]; 
} 
else 
{   
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"blah_iPad" bundle:nil]; 
    self.window.rootViewController = [storyboard instantiateInitialViewController]; 
} 
[self.window makeKeyAndVisible]; 

我用符號(〜)也試過,命名故事板類似blah~iphone & blah~ipad但它拋出的錯誤是這樣的:

2014-01-21 17:05:44.941 test[2709:60b] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </var/mobile/Applications/3D8EC72E-D20D-4C60-A413-E8040A455262/blah.app> (loaded)' with name 'UIViewController-aYh-JW-qLA' and directory 'blah.storyboardc'' 
*** First throw call stack: 
(0x2d4edf4b 0x37c846af 0x2d4ede8d 0x2ffbfe39 0x3010c03d 0x40ff5 0x2fcd12ff 0x2fcd0d4f 0x2fccb353 0x2fc6641f 0x2fc65721 0x2fccab3d 0x3211670d 0x321162f7 0x2d4b89df 0x2d4b897b 0x2d4b714f 0x2d421c27 0x2d421a0b 0x2fcc9dd9 0x2fcc5049 0x4134d 0x3818cab7) 
libc++abi.dylib: terminating with uncaught exception of type NSException 

任何想法?

+0

好像這裏有一個錯字'blah.storyboardc'注意在年底額外的'C'。 – Desdenova

+0

也嘗試改變plist文件中的相同 – Bonnie

+0

@Desdenova ..我也這麼認爲,但它不是..那是編譯器生成的錯誤 –

回答

0

也許我失去了一些東西,但我不明白爲什麼你手動管理窗口,如果你正在使用故事板文件。

我認爲您正在爲已有的項目添加通用支持。因爲如果你創建一個新的通用應用程序,一切都會按照你的需要。

你需要你的application:didFinishLaunchingWithOptions:方法在應用程序委託是這樣的:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    // Override point for customization after application launch. 
    return YES; 
} 

而且你的目標設定應該是這樣的,注意iPhone/iPad的開關,爲每個設備選擇不同的故事板。

enter image description here

+0

是的。你錯過了很多很多的東西。我在這裏問的是,如何爲這兩個故事板設置相同的名稱:( –

+0

是的,認爲如此.. blah_iPhone,blah_iPad是你能做的最好的。 – Desdenova

+0

沒有..有一些帶有代字符(〜)符號的概念..只需要爲它工作 –

相關問題