Bug 描述:
从主页控制器 push 到另外一个子页面控制器后。
再次 pop 出来的时候,主页面控制器的 tableView 尺寸发生改变
这是 Push 前的尺寸。
这是 Pop 出来后的尺寸。增加了一个导航条的高度。
Bug 原因:
是由于 子控制器内的一行代码引起的。
- (void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
self.navigationController.navigationBar.translucent = YES;
}
根据需求,把这行代码去掉就行了
self.navigationController.navigationBar.translucent = YES;
原因是 参考网上的观点
iOS7之后由于navigationBar.translucent默认是YES,坐标默认在(0,0)点 ;当不透明的时候(设为NO),零点坐标在(0,64);
如果你想设成透明的,而且还要零点从(0,64)开始,那就添加:self.edgeForExtendedLayout = UIRectEdgeNone;
如果你想设成不透明的,而且还要坐标从(0,0)开始,添加 self.extendedLayoutIncludesOpaqueBars = YES;