iOS7状态栏问题

Posted

技术标签:

【中文标题】iOS7状态栏问题【英文标题】:iOS7 Status Bar issue 【发布时间】:2013-10-26 01:27:19 【问题描述】:

我在 ios 7 中发现了很多关于状态栏问题的链接,但都没有太大帮助。

问题是我的应用程序在 iOS6 中运行良好,但是当我尝试在 iOS7 上运行它时,我想要 iOS7 的外观。

状态栏与UIViewController 很好地融合在一起,如下所示:

但对于UINavigationController,它会变黑,如下所示:

我设法在 AppDelegate 中使用以下代码更改了 statusBar 的文本颜色:

if ([[UIView appearance] respondsToSelector:@selector(setTintColor:)]) 
        [[UIView appearance] setTintColor:[UIColor whiteColor]];
    

另外,我的 plist 文件有以下条目: View controller-based status bar appearance 设置为 NO

我的 AppDelegate 有:

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

我希望在加载 NavigationController 时状态栏采用蓝色。

注意:我使用以下代码支持 iOS7:

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000
        self.edgesForExtendedLayout=UIRectEdgeNone;
#endif

不知道这是否导致了问题。

【问题讨论】:

【参考方案1】:

很难找到解决问题的方法,但尝试使用本指南,真的很好:

http://www.appcoda.com/customize-navigation-status-bar-ios-7/

【讨论】:

您提到的指南确实很有帮助,但遗憾的是无助于解决我的问题... 如果它不能解决问题,你为什么接受它作为答案?【参考方案2】:

如果您使用不同的图像,它可以正常工作。一张用于 iOS7(高 20 像素),一张用于其他,并将此图像设置为导航栏的背景。

希望得到帮助:)

【讨论】:

【参考方案3】:

这里有一个很好的解释性答案。

Status bar and navigation bar issue in IOS7

这里

iOS 7 - Status bar overlaps the view

【讨论】:

以上是关于iOS7状态栏问题的主要内容,如果未能解决你的问题,请参考以下文章

iOS7状态栏问题

IOS7中的状态栏和导航栏问题

如何匹配导航栏与状态栏ios7

iOS7隐藏状态栏

隐藏状态栏时,我的导航栏在 iOS7 中向上移动

iOS7 状态栏就像原生天气应用