- objective-c - iOS 5 : Can you override UIAppearance customisations in specific classes?
- iphone - 如何将 CGFontRef 转换为 UIFont?
- ios - 以编程方式关闭标记的信息窗口 google maps iOS
- ios - Xcode 5 - 尝试验证存档时出现 "No application records were found"
当 setStatusBarHidden:NO
设置为 View 加载时,UINavigationBar
和其他元素立即对齐在 StatusBar 下方。但是,当 setStatusBarHidden:NO
设置为 View 加载时,UINavigationBar
会被部分覆盖。
StatusBar 必须在载入上述 View 后显示出来,但如何才能不遇到上述问题呢?
最佳答案
我在我的代码中发现了一个 hack,但不记得或找不到它的来源。诀窍是通过隐藏和重新显示来刷新导航栏:
[self.navigationController setNavigationBarHidden:YES animated:NO];
[self.navigationController setNavigationBarHidden:NO animated:NO];
在我的代码中,函数如下所示:
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationNone];
[self.navigationController setNavigationBarHidden:YES animated:NO];
[self.navigationController setNavigationBarHidden:NO animated:NO];
}
但是,警告,这是一个 hack,目前我正在努力解决一些似乎源自此代码的错误(导航项不匹配导航内容)。但由于它在某些地方确实对我有用,所以我想我会提到它。
编辑:我想我在这里找到了最初的帖子: How do I get the navigation bar in a UINavigationController to update its position when the status bar is hidden?
GL,奥德
关于ios - setStatusBarHidden :NO after XIB load covers UINavigationBar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5228444/
我有一个 UIView,我想将其添加到 keyWindow 中,以便它覆盖所有内容(包括 StatusBar)。当我添加 View 时,我使用以下代码删除了状态栏: [[UIApplication s
如果我使用这种方法,是否可以通过某种方式将屏幕设置为完整的 320x480 而不是隐藏状态栏之前的 320x460? 非常感谢,-代码 最佳答案 将这段代码写在AppDelegate.m文件中 [[U
在我的 UIViewController 中,我有: - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animate
我已经尝试了所有我能找到的解决方案,包括:setStatusBarHidden is deprecated in iOS 9.0但它们都不适用于我的应用程序。 这是一个简单的单 View 应用程序。有
今天我的应用程序获得了批准,但我收到用户发来的电子邮件说它崩溃了。我发现了 [[UIApplication sharedApplication] setStatusBarHidden:YES with
我发现设置后 [[UIApplication sharedApplication] setStatusBarHidden:YES animated:NO] 在 viewDidLoad 处,如果我想将图
我在 StackOverflow 上找到了有关该问题的信息,但无法解决我的问题。 Calling the appropriate setStatusBarHidden per iOS version
当 setStatusBarHidden:NO 设置为 View 加载时,UINavigationBar 和其他元素立即对齐在 StatusBar 下方。但是,当 setStatusBarHidden
我看到在 iOS 9 中,setStatusBarHidden(_:withAnimation:) 现在已被弃用,文档说使用 [UIViewController prefersStatusBarHid
所以我的应用程序在 AppDelegate 中将状态栏设置为隐藏,就像这样。它按预期工作。 [[UIApplication sharedApplication] setStatusBarHidden:
我有一个隐藏了状态栏的应用程序。在主视图中,我使用 UIButtons 加载 subview View 。出于某种原因, subview 显示时带有隐藏的状态栏,但是,UI View 不会为此进行调整
我正在将我的代码从 iOS 8 升级到 iOS 9。我的程序中有一个代码片段[[UIApplication applicationName] setStatusBarHidden:YES];. 我收到
我是 iOS 开发新手。我只想在启动相机时隐藏状态栏,这样相机控件就不会与状态栏重叠。我找到了添加此行的解决方案: [[UIApplication sharedApplication] setStat
我想在我的 iOS v5 通用应用程序中切换状态栏。 但发现其他人似乎有 UIViews(在我的例子中是添加到主视图的 subview )如果您随后旋转设备(我正在使用模拟器),只会回收隐藏状态栏留下
我的 Root View Controller 中有代码观察 -[UIApplication sharedApplication] 的 @"statusBarHidden" 属性并调整其 View 的
我是一名优秀的程序员,十分优秀!