我有一个带有 UISplitViewController 的应用程序,当我在 potrait 模式下启动该应用程序时,它缺少“Group”UIBarButtonItem。我需要转到横向模式并返回纵向模式以使其出现。当我以横向模式启动它时,它就在那里。这里有一些屏幕截图可以清楚地说明:
这是应用程序以纵向模式启动时的情况
这是横向模式,从纵向模式旋转后:
这是从横向模式旋转回纵向模式后的结果:
最佳答案
几天前我也遇到了同样的事情。您只需确保详细 View 是 splitView 的委托(delegate)。如果您尝试在详细 View 的 viewDidLoad
中设置委托(delegate),它将在 splitView 加载(使用根 tableView Controller )之前设置。这就是为什么在您切换到横向并返回之前它不会被放置的原因。设置委托(delegate)的最佳方法是在您的应用程序委托(delegate)实现文件中(当您创建 UISplitViewController 时,这将是最好的主意)或在根 tableView Controller 中使用类似
- (void)viewDidLoad {
self.splitViewController.delegate = [self.splitViewController.viewControllers objectAtIndex:1];
}
这使得详细 View 委托(delegate),因此当它在 tableView Controller 加载后加载时,它将调用您的 splitViewController:willHideViewController:...
方法。
当然,这可能不是你的情况。我只是假设因为我有完全相同的行为,所以它可能是相同的原因。如果这不能解决问题,请直接说出来,我们会查明原因
关于objective-c - UISplitViewController 纵向模式缺少 UIBarButtonItem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6147284/