在UISplitViewController上显示模态?

时间:2012-07-06 16:21:09

标签: ios modal-dialog uisplitviewcontroller

之前已经问过这个问题,但我发现的答案都不正确,或者至少它们在iOS 5上不起作用

我正在尝试在我的UISplitViewController上显示一个模态(在iOS 5上),到目前为止我还没有运气。 大多数帖子提到我的mainViewController中的模态,这似乎对我没用。

我尝试使用segue或者在代码中手动执行模式,来自UISplitViewController和我的主UIViewController,它总是给我以下错误:

由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'应用程序尝试以模态方式呈现拆分视图控制器

这个错误是错误的,我没有尝试以模态方式显示splitView,我试图从splitView显示模态

还有其他解决方案吗?

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
   NSLog(@"%@", self.window.rootViewController);
   // It prints out UISplitViewController


    // I tried this
    UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
    UIViewController *viewController = [storyBoard instantiateViewControllerWithIdentifier:@"LoginViewController"];
    [self.window.rootViewController presentModalViewController:viewController animated:NO];

    // Also tried this
    [self.window.rootViewController performSegueWithIdentifier:@"LoginSegue"];

    return YES;
}

1 个答案:

答案 0 :(得分:1)

错误消息表明您的loginViewControllerUISplitViewController。这不会起作用,因为你无法以模态方式显示拆分视图。

否则我的代码中没有错误,我使用presentModalViewController:animated:毫无问题地在iOS 5.1上实现了您想要实现的目标。