当我运行我的网络应用程序时,WebView 接管了状态栏,如图所示: http://imgur.com/JggYPP2
我想分开。 一个例子是这样的: http://imgur.com/Zll2Oes
如何设置 WebView 以产生这种效果?
对不起链接,但是我不能上传图片,因为我是新手
最佳答案
UIWebView 和 WKWebView 类都继承自 UIView,这意味着我们可以将问题归结为 UIStatusBar 实例错误地与 UIView 实例重叠。
如果您在 Storyboard 中使用自动布局,请在 Web View 的顶部和 UIViewController View 的顶部布局指南的底部之间创建一个约束(值为 0)。通过将您的约束与 Top Layout Guide 相关联,如果 iOS 设计师改变它,您的 Web View 将始终响应状态栏高度。
如果您以编程方式呈现 Web View 并且不希望使用自动布局,请查看 CGRectOffset和 CGRectInset手动设置 Web View 的框架。在撰写本文时,状态栏的高度为 20 点。
2017 年 12 月 1 日更新
在推出第一款非矩形屏幕 iPhone(iPhone X)之前,Apple 推出了 Safe Areas在 iOS 11 中管理 UIView 与设备边界的关系。除了管理设备的物理边界外,安全区域还会观察软件边界,例如虚拟主页按钮。
除非您的应用需要自定义绘图,否则我建议您以后完全依赖自动布局。在 UIViewController 中,将 subview 的 topAnchor 与 UIViewController View 的 safeLayoutGuide.topAnchor 相关联,等等。
关于ios - WebView 和状态栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36705339/