【发布时间】:2014-10-27 03:34:28
【问题描述】:
我正在展示一个如下所示的视图控制器,并且所展示的视图控制器的内容与它自己的导航栏重叠。
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 的框架原点/大小来解决它,但是,有没有更简单的方法?
self.webview 是contentview,我曾经有如下代码让webview 适应整个屏幕-导航栏-状态栏。 (当我只是 pushedViewController 时效果很好)
self.webview.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight);
[self.view addSubview:self.webview];
self.webview.frame = self.webview.superview.bounds;
【问题讨论】:
-
可以分享截图吗?
-
@AsifAsif:我添加了它们,上面是当前的错误图像,第二个是所需的图像。
-
尝试在
viewDidLoad中添加这些行:self.navigationController.navigationBar.translucent = YES; self.edgesForExtendedLayout = UIRectEdgeNone; -
@AsifAsif: 神秘.. 但哇,它奏效了! ..您可以将您的评论移至答案以便我标记它吗?
-
我实际上在 SO 答案之一中看到了该解决方案,但不相信它会影响我的情况。因为我的导航栏已经是半透明的了..
标签: ios iphone uinavigationcontroller