美文网首页
UIApplication window 转移到 SceneDe

UIApplication window 转移到 SceneDe

作者: 张科_Zack | 来源:发表于2020-11-10 09:29 被阅读0次

    有关 SceneDelegate 详细介绍请参考 :https://www.jianshu.com/p/10df52dde8e5
    此文章参考 OC 版本已经找不到了, 我这里提供 Swift 版本以及解释。
    关于 iOS 13 之后 UIApplication window 转移到SceneDelegate的问题,写了一个小扩展供大家使用。

    注意如果App中有多window的谨慎使用(比如app中小浮动窗口类似微信文章小浮动窗口以及音视频通话时小电话浮动窗口)。

    代码如下:

    
    import Foundation
    
    extension UIApplication {
    
        class func getWindow() ->UIWindow? {
    
            for scene in self.shared.connectedScenes {
    
                if scene.activationState == .foregroundActive {
    
                    return (scene as? UIWindowScene)?.windows.first
    
                }
    
            }
    
            return nil
    
        }
    
    }
    
    

    相关文章

      网友评论

          本文标题:UIApplication window 转移到 SceneDe

          本文链接:https://www.haomeiwen.com/subject/qemdbktx.html