2016-09-20 10 views
0

私はiphone Main.storyboardための2つのストーリーボード最初のものを使用しています2つ目はMain_iPad.storyboardで、私はこのコードを使用していますiPadとiPhoneのために個別に呼び出したい:iOSでさまざまなストーリーボードを呼び出す方法は?

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { 
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main_iPad" bundle:nil]; 
    EABaseRootVC *loginController = [storyboard instantiateViewControllerWithIdentifier:@"root2"]; 
    UINavigationController *navController=[[UINavigationController alloc]initWithRootViewController:loginController]; 
    self.window.rootViewController=navController; 
} 
else 
{ 

    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; 
    EABaseRootVC *loginController = [storyboard instantiateViewControllerWithIdentifier:@"root"]; 
    UINavigationController *navController=[[UINavigationController alloc]initWithRootViewController:loginController]; 
    self.window.rootViewController=navController; 
} 

しかし、そのは常にMain.storyboardのためにiPhoneの資産を示し。

私はすでにあなたが他のアイデアを持っている場合ので、私を提案してください。このDifferent storyboards for iPhone and iPad in xcode 6

に従っています。 私は間違って何をしていますか?

if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad){ 
    // code for iPad 
}else{ 
    // code for iPhone 
} 

そして、あなたのプロジェクトの.plistファイル内のこれら2つのキーを追加する必要があります。それはコードの下iPhoneまたはiPad使用され、具体的かどうかをAppleデバイスを識別するために

答えて

0

Main storyboard file base name (iPad) 
Main storyboard file base name (iPhone) 

参照イメージ:

enter image description here

+0

は、私はすでに私のInfo.plistファイルではなく動作していないこれらの事を追加しました。 – AforAmit

+0

おそらくあなたはあなたのプロジェクトの別のplistファイルを更新したばかりです。このコードは正常に動作します。 – vaibhav

+0

はい、私はこのコードが正常に動作することを知っています。 – AforAmit

関連する問題