我的应用有UISplitViewController
,隐藏主视图时启动。
除非我旋转设备,否则以下委托方法
- (void)splitViewController:(UISplitViewController *)svc
willHideViewController:(UIViewController *)aViewController
withBarButtonItem:(UIBarButtonItem *)barButtonItem
forPopoverController:(UIPopoverController *)pc {
_masterPopover = pc;
}
永远不会调用。这是我知道获得对popover控制器(该方法中的pc
)的引用的唯一方法。
我需要能够以编程方式显示和隐藏主popover的引用,但我不能依赖用户来旋转他们的iPad。 有没有其他方法可以获得该参考?
答案 0 :(得分:1)
如果隐藏了主视图,则必须1>调用willHideViewController
。如果是这样的话,你将获得barButtonItem
,让用户召唤弹出窗口(并将其粘贴到你的界面中)。
如果这不适合你,我最好的建议是不要使用UISplitViewController。滚动你自己。 UISplitViewController一直非常差(并且你已经直接指出了它的一个主要弱点),但是自从iOS 5以来,已经有一种合法的连贯方式来编写自己的父容器控制器。所以我建议你这样做。