从另一个Storyboard以编程方式加载UISplitViewController

时间:2013-08-08 03:37:20

标签: ios objective-c ipad storyboard uisplitviewcontroller

目前我在我的项目中使用了两个iPad故事板。

第一个故事板有一个登录屏幕和一个tableview控制器。当单击单元格时,我想从第一个故事板tableview控制器调用第二个故事板。通常它很容易,但这里的第二个故事板有一个UISplitViewController

    MainSVC *baseView = [[MainSVC alloc] init]; //UISplitViewController

    UIStoryboard *storyBoard=[UIStoryboard storyboardWithName:@"Mail_iPad" bundle:nil]; //Second Storyboard

    baseView =[storyBoard instantiateViewControllerWithIdentifier:@"MainSVC"]; //MainSVC = Storyboard Name
    [self presentViewController:baseView animated:YES completion:nil];

此代码无效。我在谷歌搜索,但找不到最佳解决方案。

如何以编程方式调用第二个storyboard splitview控制器?

2 个答案:

答案 0 :(得分:4)

使用此代码。这应该是有效的。 !

    UIStoryboard *storyBoard=[UIStoryboard storyboardWithName:@"Mail_iPad" bundle:nil];

    UISplitViewController *split = [storyBoard instantiateViewControllerWithIdentifier:@"MainSVC"];
    self.view.window.rootViewController = split;

答案 1 :(得分:0)

不要分配拆分视图控制器的另一个实例。应该这样做

UIStoryboard *storyBoard=[UIStoryboard storyboardWithName:@"Mail_iPad" bundle:nil]; //Second Storyboard

MainSVC *baseView =(MainSVC *)[storyBoard instantiateViewControllerWithIdentifier:@"MainSVC"]; //MainSVC = Storyboard Name
[self presentViewController:baseView animated:YES completion:nil];