我使用的是UISplitViewController on iPhone 6 Plus,当用户在纵向模式下返回主视图控制器(即当拆分视图像导航控制器时)时,我希望得到通知。
此外,我希望在我的UISplitViewDelegate中得到通知,就像当用户推送详细视图控制器(通过splitViewController:showDetailViewController:sender:回调)时已经收到的通知一样。
你知道最简单(最干净)的方法吗?
提前谢谢。
发布于 2015-03-11 10:23:06
这取决于iOS的哪个版本,我们正在尝试这样做。
iOS 8.0~8.2 way您的项目不应该与iOS 7兼容,只工作iOS 8和更高最好的方法是使用在2014年WWDC上展示的大小类(特性集合),还有一段关于这一方法的视频,Session 214“查看控制器在iOS 8中的进展”
简单地说,它现在有一个属性--此属性指示是否折叠了详细信息视图。(会话214,分12:30 ->)
@property (getter=isCollapsed) BOOL崩溃;KVO有一点魔力,您可以回调详细信息视图。
用于旧的iOS 7 way,您可以检测设备的当前方向并获取详细信息的当前状态。
有两个方法(旋转回调):
意愿导向:持续时间:
didRotateFromInterfaceOrientation:
interfaceOrientation
!!!基于Session 214(43:20) ,不建议在iOS 8和UP中使用这些方法,因为它们被废弃了!
我不确定这两种方式是最好的和最简单的,但它们作为expected.And的小建议正确地工作,看看WWDC的视频,它们是相当有用的。
发布于 2015-05-27 09:42:28
要在MasterViewController返回时得到通知,您必须创建一个委托并将其设置为DetailViewController (例如,在performSegueWithIdentifier中)。
如果是这样的话,当您返回到master时,委托将被解雇。
发布于 2020-02-12 15:30:45
因为show是自适应的,也就是说,它要么以紧凑的宽度推送主导航,要么在规则宽度中设置为拆分的次要位置,并且您只想知道细节何时弹出,因此您需要使用主导航控制器的委托,您也可以将其设置为app委托。
https://stackoverflow.com/questions/28834695
复制相似问题