我展示了一个视图控制器,如下所示,视图控制器的内容与它自己的导航栏重叠。
MyViewController *myViewController = [[MyViewController alloc] initWithNibName:nil bundle:nil];
UINavigationController *navigationController =
[[UINavigationController alloc] initWithRootViewController:myViewController];
//now present this navigation controller modally
[self presentViewController:navigationController
animated:YES
completion:^{
}];
我可能可以通过调整contentView的框架原点/大小来修复它,但是,有更简单的方法吗?
webview是contentview,我曾经使用以下代码来使webview适合整个屏幕- navigationbar - statusbar。(当我只使用pushedViewController
时,它工作得很好)
self.webview.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight);
[self.view addSubview:self.webview];
self.webview.frame = self.webview.superview.bounds;
2条答案
按热度按时间shyt4zoc1#
请在
viewDidLoad
方法中添加以下行:wi3ka0sx2#
这是一个古老的问题。接受的答案可能仍然有效,但实际上只适用于iOS 7到9。在iOS 10中,文档是这样说的:
使用视图的安全区域来确定界面的哪些部分被其他内容遮挡,而不是使用此属性。有关详细信息,请参见UIView的safeAreaLayoutGuide和safeAreaInsets属性。