自定义 UIWindow 造成的 UIMenuController 不显示问题

场景:
自定义 UIWindow 覆盖状态栏,显示动态。
例如: QQ邮箱 的发送邮件状态栏显示进度。

但是如果你的View 中存在 UIMenuController,就会发现失效了,不在相应用户的操作。

解决办法是将系统的 window 重设为 keyWindow

if let window = UIApplication.shared.delegate?.window {
        if let window = window {
            if !window.isKeyWindow {
                  window.becomeKey()
                  window.makeKeyAndVisible()
            }
        }
}

你可能感兴趣的:(自定义 UIWindow 造成的 UIMenuController 不显示问题)