0

我有一个 UISplitViewController,我需要从中加载一个 UIViewController。我知道我可以将其作为模态进行,但这不是我所追求的。我需要 UIViewController 像普通 VC 一样加载并占据全屏,并且当触摸 DONE 按钮时,它会返回到 UISplitViewController。到目前为止,当我尝试这样做时,它会加载到 UISplitViewController 的一半而不是替换它。

所以,我的问题是,“这可能吗?” 如果是这样,如何?目前我正在使用模式(PageSheet),它在纵向方向上很好,但在横向方向上看起来很糟糕。

目前,我的拆分视图是通过标签栏在 App Delegate 中设置的,如下所示:

AdminMasterViewController *adminMasterVC = [[AdminMasterViewController alloc] init];
adminMasterNav.viewControllers = [NSArray arrayWithObjects:adminMasterVC, nil];

AdminDetailViewController *adminDetailVC = [[AdminDetailViewController alloc] init];
adminDetailNav.viewControllers = [NSArray arrayWithObjects:adminDetailVC, nil];

UISplitViewController *adminSplitVC = [[UISplitViewController alloc] init];
adminSplitVC.viewControllers = [NSArray arrayWithObjects: adminMasterNav, adminDetailNav, nil];
adminSplitVC.delegate = self;
adminSplitVC.title = @"Admin";

然后用标签栏加载。

我不知道为什么我无法理解 VC 之间的关系,显然是大脑中缺失的一部分。

4

1 回答 1

0

为什么你不想使用模态?你可以有一个全屏,只需设置模态演示样式

YourUIViewController *viewController = (YourUIViewController*)[yourStoryboard instantiateViewControllerWithIdentifier:@"YourUIViewController"];
[viewController setModalPresentationStyle:UIModalPresentationFullScreen];

/*some additional logic if needed*/   

[yourSplitViewController presentViewController:viewController animated:NO completion:nil];
于 2013-08-20T21:30:21.717 回答