Objective-c:在 ios 11 更新 swrevealcontroller 中的黑色状态栏后

Posted

技术标签:

【中文标题】Objective-c:在 ios 11 更新 swrevealcontroller 中的黑色状态栏后【英文标题】:Objective-c: after ios 11 update black status bar in swrevealcontroller 【发布时间】:2018-03-15 22:10:39 【问题描述】:

我正在开发一个应用程序。在 ios 11 更新之前,它运行良好。但是在更新到 ios 11 并更新 XCode 之后,我遇到了一个错误。我有一个使用 SWRevealController 框架的侧边菜单:https://github.com/John-Lluch/SWRevealViewController。

更新到 ios 11 后是这样的:

after ios 11 update

状态栏有问题。它曾经是蓝色的,和其他的一样。我看不到状态栏中的文字(比如时间),但是当我将整个菜单放在屏幕上时,我可以看到绿色电池。如您所见,另一个视图控制器工作正常(就像整个应用程序一样)。只有菜单有问题。在做了一些调试之后,我认为 self.navigationController.navigationBar 不够高。

这里发生了什么?

谢谢!

【问题讨论】:

你找到解决办法了吗? 不,我没有。我找到了解决方法。我将 SWRevealController 中某些视图的背景(不记得到底是哪一个)更改为相同的蓝色。有点脏,但我找不到其他方法。 是的。这也是我看到的唯一解决方法。 【参考方案1】:

这仍然是一个开放的 cordova 错误,于 2017 年 6 月首次记录到 here。

那里描述的修复在我的情况下有效:

解决此问题的纯 html 方法是将 viewport-fit=cover 添加到 meta viewport 标记。


另一种解决方法:

[[webView scrollView] setContentInsetAdjustmentBehavior: UIScrollViewContentInsetAdjustmentNever];

【讨论】:

以上是关于Objective-c:在 ios 11 更新 swrevealcontroller 中的黑色状态栏后的主要内容,如果未能解决你的问题,请参考以下文章

Objective-c 应用更新和核心数据

当按下自定义按钮时,UILabel 不会更新(Objective-C)

Mac Catalyst 中的弃用警告,但仅在 Objective-C 中,而不是在 Swift 中

Xcode 11.4 和 iOS 13.4 打破了 Project 中的 Objective-C 类别

iOS 11 中的 SafeArea:如何在没有安全区域的情况下使用自定义导航栏在主屏幕上添加来自 Objective-c 代码的视图

在 iOS 13 [UIApplication sharedApplication] delegate].window 中使用objective-c 不起作用