我有一个 UIViewController,它在底部包含一个 TableView 和一个 GADBannerView。当收到广告时,我会更改 TableView 的高度,这样广告就不会覆盖任何单元格。这在我的 iPhone 6 (iOS 10) 和模拟器 (iOS 10) 上没有任何问题,但是由于某种原因在旧 iPhone 4s (iOS 9) 上测试我的应用程序时,如果我离开视图,TableView 高度会重置控制器,然后返回它。为什么会发生这种情况,我该如何预防?
这是我用来调整表格视图大小的代码。
- (void)adViewDidReceiveAd:(GADBannerView *)view {
if (!adRecieved) {
view.hidden = NO;
CGRect currentRect = self.tableView.frame;
currentRect.size.height -= CGRectGetHeight(view.frame);
self.tableView.frame = currentRect;
adRecieved = YES;
}