将嵌套在容器视图控制器中的UINavigationController添加到UITabBarController
我有一个UIViewController
(红色)设置为UITabBarController
的第一个选项卡,如下面的故事板中所示。 这个视图控制器是一个容器视图控制器,并在其contentView
(红色视图控制器内的白色矩形)内加载一个UINavigationController
。
这是我加载红色视图控制器的contentView
的导航控制器的代码:
- (void)viewDidLoad { [super viewDidLoad]; // instantiate navigation controller UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; UINavigationController *navigationVC = [storyboard instantiateViewControllerWithIdentifier:@"N"]; // place navigation controller inside content view [self addChildViewController:navigationVC]; navigationVC.view.frame = self.containerView.bounds; [self.containerView addSubview:navigationVC.view]; [navigationVC didMoveToParentViewController:self]; }
从我所知道的视图控制器遏制这应该工作,因为我明确地设置导航控制器的框架。 但是,当tableView
有足够的单元格超过容器的高度时,向下滚动时, tableView
的末尾总会有一个条形。 我已经将tableView
的backgroundColor
为橙色 ,将单元格的backgroundColor
为白色 ,以便看出区别。
我如何摆脱在tableView
结束的橙色差距?
(注意:我没有使用autolayout,我需要一个适用于iOS7 和 iOS6的解决scheme。)
我知道你也在寻找一个适用于iOS 6的解决scheme,但在iOS 7和更高版本中,你可以使用它
self.extendedLayoutIncludesOpaqueBars = YES;
你有没有尝试设置self.edgesForExtendedLayout = UIRectEdgeAll;
在-(void)viewDidLoad
的Table View Controller - Root
?
注意 :仅限iOS 7