在 iPad 的 splitViewController 中添加 UINavigationController
Posted
技术标签:
【中文标题】在 iPad 的 splitViewController 中添加 UINavigationController【英文标题】:Adding UINavigationController inside splitViewController in iPad 【发布时间】:2013-10-28 05:36:00 【问题描述】:我使用的是 splitViewController,我的详细视图有一个 navigationController 作为父级。
我是这样添加的
我的应用是通用的。所以我为 iphone 和 ipad 创建了不同的 xib。
_moreOptions = [[MoreOptionsViewController alloc] initWithNibName:@"MoreOptionsViewController" bundle:nil];
_settingsView = [[SettingsViewController alloc] initWithNibName:@"SettingsViewController_iPad" bundle:nil];
UINavigationController *navController = [[UINavigationController alloc]initWithRootViewController:_settingsView];
_moreOptions.settigsView = _settingsView;
self.splitViewController3 = [[UISplitViewController alloc]init];
// self.splitViewController3.title = @"More";
self.splitViewController3.delegate = _settingsView;
self.splitViewController3.viewControllers = @[_moreOptions, navController];
SettingsViewController 里面有 UITableView。所以我面临的问题是,我的细节在 iPad 上没有填满,这是屏幕截图
你可以看到底部的黑斑,这是我关心的问题,
【问题讨论】:
【参考方案1】:编辑:我想我找到了解决方法,将其应用于 UISplitViewController:
[splitVC setExtendedLayoutIncludesOpaqueBars:YES];
此属性仅适用于 ios 7,似乎可以解决问题。查看UIViewController.h中替换-wantsFullscreenLayout:
的方法。
我遇到了同样的问题——如果我在 iOS 5 或 6 上构建,它工作正常,没有差距。会不会是 iOS 7 的错误?如果是这样,这是一个特别不方便的。仍在寻找解决方法。
据我所知,我们正在执行正确的步骤: (请参阅“将导航控制器添加到选项卡栏界面”) https://developer.apple.com/library/ios/documentation/WindowsViews/Conceptual/ViewControllerCatalog/Chapters/CombiningViewControllers.html
【讨论】:
以上是关于在 iPad 的 splitViewController 中添加 UINavigationController的主要内容,如果未能解决你的问题,请参考以下文章
iPad splitViewController 弹出主视图
使用 splitViewController 在 iPad 故事板上出现黑屏
SplitViewController 显示细节 iPad Pro 纵向模式
Ipad SplitViewController 导航到另一个视图