gpt4 book ai didi

iphone - 使iPhone状态栏在显示模态视图时消失?

转载 作者:行者123 更新时间:2023-12-03 18:42:00 25 4
gpt4 key购买 nike

我想显示一个模态视图,并希望它覆盖 iPhone 的状态栏。

我尝试将模态视图 Controller 的wantFullScreenLayout属性设置为YES;我还将其父级的属性也设置为 YES。这不起作用,可能是因为模态视图显示在主窗口内容(包括状态栏)下方。

我的第二种方法放弃了整个“wantsFullScreenLayout”技术,转而在显示模态视图之前隐藏状态栏,然后在模态视图关闭后将其重新打开。这一直有效到最后......模态视图的父 View 布局不正确(其导航栏部分隐藏在状态栏后面。)调用 -[view setNeedsLayout] 不会执行任何操作。

我应该如何解决这个问题?

谢谢。

最佳答案

加入讨论晚了,但我想我可以为其他人省去一些麻烦。

我有一个 VC 多次推送到 NavController 中(我们称该 VC 为 PARENT)。现在我想显示一个模态屏幕(CHILD),其中导航栏和状态栏隐藏。经过多次实验,我知道这是有效的......

1) 因为我通过在 PARENT 中调用 presentModalViewController:(UIViewController *)modalViewControllerAnimated:(BOOL)animated 来呈现 CHILD VC,所以不再涉及导航栏(无需隐藏它) )。

2) CHILD VC Nib 中的 View 大小为 320x480。

3) CHILD VC 在 viewDidLoad 中设置 self.wantsFullScreenLayout = YES;

4) 在显示 CHILD 之前,使用 [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:YES]; 隐藏状态栏

5) 在 PARENT 中使用委托(delegate)协议(protocol)方法关闭 CHILD VC,并在 dismissModalViewControllerAnimated:YES] 之前调用 [[UIApplication shareApplication] setStatusBarHidden:NO withAnimation:YES]; code> 确保导航栏绘制在正确的位置

希望这有帮助。

关于iphone - 使iPhone状态栏在显示模态视图时消失?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2188401/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com