UISplitViewController - 隐藏主滑入视图
Posted
技术标签:
【中文标题】UISplitViewController - 隐藏主滑入视图【英文标题】:UISplitViewController - Hide master slide-in view 【发布时间】:2014-02-11 13:19:37 【问题描述】:我的应用在其主视图控制器中有一个UICollectionViewController
。当设备处于纵向时,用户可以滑动屏幕以显示主视图。
选择收集单元格时,详细视图已使用新数据进行更新。现在我希望主视图同时自动隐藏。有可能吗?
【问题讨论】:
How to hide master view in UiSplitviewcontroller in ipad 的可能重复项 检查我记录的副本中的最高得分(不是所选答案)。 @PeterDeWeese 我知道这个功能。这将根据方向控制是否应该隐藏主视图。但是,我想控制滑入的主视图(以前是弹出窗口),而不是固定样式的主视图。 感谢您的澄清。关闭投票被撤回。 【参考方案1】:在Apple Developers Forum找到答案
首先确保细节视图控制器有对弹出视图的引用:
- (void)splitViewController:(UISplitViewController *)svc
willHideViewController:(UIViewController *)aViewController
withBarButtonItem:(UIBarButtonItem *)barButtonItem
forPopoverController:(UIPopoverController *)pc
//Grab a reference to the popover
self.popover = pc;
然后在更新详细视图时关闭弹出框:
if (_popover != nil)
[_popover dismissPopoverAnimated:YES];
【讨论】:
遗憾的是,UIPopoverController
在 ios 9 中已被弃用,这使得它成为一个垂死的解决方案。【参考方案2】:
在UICollectionViewController
你可以这样做
UISplitViewController *splitVC = (UISplitViewController *)self.parentViewController;
splitVC.preferredDisplayMode = UISplitViewControllerDisplayModePrimaryHidden;
【讨论】:
以上是关于UISplitViewController - 隐藏主滑入视图的主要内容,如果未能解决你的问题,请参考以下文章
UISplitViewController - 并排或纵向叠加
在 UIViewControllers 和 UISplitViewController 之间导航 [关闭]
将 UIToolBar 放在 UISplitViewController 上方?
UISplitViewController + UISearchController 显示搜索细节