我很确定我的问题与如何为UISplitVIEwController设置委托有关.当我有多个主VC和多个细节VC时,我很困惑如何使用它.代理代码应该放在哪里 – 主人或详细信息?我是否必须在每个视图控制器中实现UISplitVIEwControllerDelegate协议事件?
任何帮助赞赏.
解决方法 如果拆分视图控制器委托是已替换的详细视图控制器,则这是导致崩溃的原因.替换的详细视图控制器正在被解除分类,因此拆分视图控制器委托不再是对有效对象的引用.您可以在prepareForSegue:sender:中更新委托.例如:
- (voID)prepareForSegue:(UIStoryboardSegue *)segue sender:(ID)sender{ if ([[segue IDentifIEr] isEqualToString:@"MySegue"]) { UIVIEwController *destinationVIEwController = [segue destinationVIEwController]; if ([destinationVIEwController conformstoprotocol:@protocol(UISplitVIEwControllerDelegate)]) { self.splitVIEwController.delegate = destinationVIEwController; } else { self.splitVIEwController.delegate = nil; } }}
您用于代理的视图控制器取决于您的视图控制器层次结构.在最简单的情况下,分配给splitVC详细信息的任何视图控制器可能都需要是委托.您可能希望将它们全部基于处理共享拆分视图控制器委托逻辑的公共超类.
总结以上是内存溢出为你收集整理的iOS – 带故事板的UISplitViewController – 多个主视图和多个详细视图全部内容,希望文章能够帮你解决iOS – 带故事板的UISplitViewController – 多个主视图和多个详细视图所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)