我在 iPhone 6 Plus 上使用UISplitViewController
,我希望在纵向模式下通知用户返回主视图控制器( ie 当拆分视图像导航控制器一样时。)
此外,我希望收到我的UISplitViewDelegate
通知,当用户推送详细视图控制器(通过 splitViewController:showDetailViewController:sender:
回调)时,我已收到通知
你知道最简单(也是最干净)的方法吗?
提前致谢。
答案 0 :(得分:0)
取决于我们尝试使用的iOS版本。
iOS 8.0~8.2方式您的项目不应与iOS 7兼容,并且仅适用于iOS 8和UP,最好的方法是使用WWDC 2014上提供的大小类(特征集合)是一个关于这种方式的视频,第214节"在iOS 8中观看控制器进步"
简单地说它现在有一个属性 此属性指示是否折叠了详细视图。(会话214,分钟12:30 - >)
@property(getter = isCollapsed)BOOL崩溃了; 一点KVO魔术,你可以回顾一下详细视图何时可用。
对于旧iOS 7方式,您可以检测设备的当前方向并获取详细信息的当前状态。
您拥有的耦合方法(旋转回调):
willRotateToInterfaceOrientation:持续时间:
didRotateFromInterfaceOrientation:
interfaceOrientation
!!!基于会话214(43:20)不建议在iOS 8 和UP中使用这些方法,因为它们已被弃用!!!
我不确定这两种方式是最好的也是最简单的,但是它们可以按预期正常工作。看看WWDC视频的建议很少,它们非常有帮助。
答案 1 :(得分:0)
要在[{1}}返回时收到通知,您必须创建一个委托,并将其设置为MasterViewController
,例如DetailViewController
。
如果是这样,当你回到主人时,代表将被解雇。
答案 2 :(得分:0)
由于显示细节是自适应的,即它要么以紧凑的宽度推入主导航,要么以常规宽度设置为拆分的辅助导航,而您只想知道何时弹出细节,您将需要使用主导航控制器的代理,您也可以将应用代理设置为。