我在文档中找不到与此相关的任何内容。这就是文档所说的
更改窗口级别
每个UIWindow对象都有一个可配置的windowLevel属性 确定该窗口相对于其他窗口的定位方式。 在大多数情况下,您不需要更改您的级别 应用程序的窗口。新窗口自动分配给 创建时的正常窗口级别。正常的窗口级别 表示该窗口显示与应用程序相关的内容。更高 窗口级别保留用于需要浮动的信息 应用程序内容,例如系统状态栏或警报 消息。虽然您可以将窗口分配给这些级别 你自己,系统通常会在你使用特定的时候为你做这件事 接口。例如,当您显示或隐藏状态栏或 显示警报视图,系统自动创建所需的 窗口显示这些项目。
似乎不支持动态行为。也许有人知道任何解决方法吗?
目标是在状态栏上方显示重叠窗口。喜欢这个
我使用了MTStatusBarOverlay(https://github.com/myell0w/MTStatusBarOverlay),但是自从iOS 8.3起,在旋转期间定位第二个窗口存在系统错误(https://github.com/myell0w/MTStatusBarOverlay/issues/94)
我发现,添加一个MTStatusBarOverlay实例作为主窗口的子视图可以修复定位和旋转问题,但会使叠加层处于状态栏下。
然后我认为更改根窗口的级别可以将它放在状态栏上并且它可以工作。
但这仅适用于application:didFinishLaunchingWithOptions:
方法。
有什么想法吗?