UISplitViewController纵向模式缺少UIBarButtonItem

adi*_*dit 8 objective-c ipad uisplitviewcontroller

我有一个带有UISplitViewController的应用程序,当我在potrait模式下启动应用程序时,它缺少"Group"UIBarButtonItem.我需要转向横向模式并返回potrait以使其显示.当我以横向模式启动时它就在那里.这是一些明确的屏幕截图:

这是在纵向模式下启动应用程序的时间 在此输入图像描述

从纵向模式旋转后,这是横向模式: 在此输入图像描述

这是从横向模式旋转回纵向模式后:在此输入图像描述

jus*_*tin 4

几天前,同样的事情也发生在我身上。您只需确保详细视图是 splitView 的委托。如果您尝试在详细信息视图中设置委托viewDidLoad,则只有在 splitView 加载(使用根 tableView 控制器)之后才会设置它。这就是为什么在您切换到横向并返回之前它不会被放置。设置委托的最佳方法是在您的应用程序委托实现文件中(当您创建 UISplitViewController 时,这将是最好的主意)或在根 tableView 控制器中使用类似的内容

- (void)viewDidLoad {
    self.splitViewController.delegate = [self.splitViewController.viewControllers objectAtIndex:1];
}
Run Code Online (Sandbox Code Playgroud)

这使得详细视图委托,因此当它在 tableView 控制器加载后加载时,它将调用您的splitViewController:willHideViewController:...方法。

当然,这可能不是你的情况。我只是假设,由于我有完全相同的行为,因此可能是相同的原因。如果这不起作用,请直接说出来,我们会找出原因