setNeedsStatusBarAppearanceUpdate 无法识别的选择器

Posted

技术标签:

【中文标题】setNeedsStatusBarAppearanceUpdate 无法识别的选择器【英文标题】:setNeedsStatusBarAppearanceUpdate unrecognized selector 【发布时间】:2013-10-18 19:35:27 【问题描述】:

我的 ios phonegap 应用程序出现问题,其状态栏与 iOS 7 中的 web 视图重叠。我发现 this answer 解决了问题,但第二步调用

[self setNeedsStatusBarAppearanceUpdate];

viewDidLoad 中导致应用在iOS 6 中崩溃并抛出unrecognized selector

【问题讨论】:

【参考方案1】:

以后,如果你需要使用 iOS 7 中的东西,例如 setNeedsStatusBarAppearanceUpdate 并且你仍然需要支持早期的 iO​​S 版本,你可以先检查选择器是否支持:

if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)])

    [self setNeedsStatusBarAppearanceUpdate];

【讨论】:

我最初尝试过,但收到“未定义的选择器”错误,它会崩溃。现在它似乎在模拟器和运行 iOS 6 的 iPhone 上工作得很好。去图...【参考方案2】:

原来没有必要添加[self setNeedsStatusBarAppearanceUpdate];,并且该应用在 iOS 6 和 iOS 7 中运行良好。

【讨论】:

以上是关于setNeedsStatusBarAppearanceUpdate 无法识别的选择器的主要内容,如果未能解决你的问题,请参考以下文章