当我将状态栏设置为隐藏或不隐藏时,如何自动调整 ios 视图的大小

发布于 2024-12-12 08:36:13 字数 307 浏览 0 评论 0原文

当我使用 [[UIApplicationsharedApplication]setStatusBarHidden:__animated:__] 隐藏状态栏时,屏幕顶部出现空白区域。我知道这是状态栏。如果我只使用一个简单的 UIViewController 作为我的主视图控制器,我可以将视图的框架设置为 (0, 0, 320, 480) 来覆盖白色空间。但是当我使用 UINavigationController 时,我不知道该怎么做。

有人知道这个吗?如果您没有时间编写代码,请提供一些建议。我可以利用你提供的建议来做一些研究。

提前致谢。

When I use [[UIApplication sharedApplication] setStatusBarHidden:__ animated:__] to hide the status bar, I got a white space at the top of screen. I know it is for status bar. And if I just use a simple UIViewController as my main view controller I could set the view's frame to (0, 0, 320, 480) to cover the white sapce. But when I use UINavigationController, I don't know how to do that.

Anyone know this? Just give some advice if you don't have time to write code. I could use the advice you provided to do some research.

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

别把无礼当个性 2024-12-19 08:36:14

我认为您必须访问 UINavigationController 中的 currentViewController 视图并修改该视图框架。

NSArray *controllers = [navController viewControllers];

// loop through and find the controller you want

// controller.frame.size.height= newHeight 

您可能还需要更改根视图控制器的视图大小。

I reckon you will have to access the view of the currentViewController in your UINavigationController and modify that views frame.

NSArray *controllers = [navController viewControllers];

// loop through and find the controller you want

// controller.frame.size.height= newHeight 

You might need to change the view size of the root view controller too.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文