objective-c - UISplitViewController 纵向模式缺少 UIBarButtonItem

标签 objective-c ipad uisplitviewcontroller

我有一个带有 UISplitViewController 的应用程序,当我在 potrait 模式下启动该应用程序时,它缺少“Group”UIBarButtonItem。我需要转到横向模式并返回纵向模式以使其出现。当我以横向模式启动它时,它就在那里。这里有一些屏幕截图可以清楚地说明:

这是应用程序以纵向模式启动时的情况 enter image description here

这是横向模式,从纵向模式旋转后: enter image description here

这是从横向模式旋转回纵向模式后的结果:enter image description here

最佳答案

几天前我也遇到了同样的事情。您只需确保详细 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/

相关文章:

ios - 详细信息 View Controller 中缺少 UIBarButton

uisplitviewcontroller - 如何在肖像模式下使UIsplitview的弹出框可见iPad

iphone - 如何像 Interface Builder 一样调整 iOS UI 组件的大小

ios - 如何从扩展/嵌套的 UITableViewCell 导航到 View Controller

iphone - 将 Xcode 的目标设置为 iPhone 而不是 iPad

iphone - 异步 NSURLConnection 和 NSOperation - 取消

objective-c - 带有 UILabel subview 缓存问题的 UITableViewCell

ios - 多个数据模型的多个 ObjectContext?

iphone - IOS7 中的 NSUTF8StringEncoding 问题

ios - 为 iOS5 和 Storyboard更新 MGSplitViewController 的已知努力?