Closed Cyfuer closed 1 year ago
希望作者合并一下这个PR, 更新一下版本 的确存在这个问题
目前我测试一下,可行,具体还没有详细测试,待验证 1.我是登录 APP,和退出登录时候走一遍,看自己情况而定 /!!!: 播放器横屏 iOS 16 window 一直存在的问题/ __block UIWindow window; if (@available(iOS 13, )) { [[UIApplication sharedApplication].connectedScenes enumerateObjectsUsingBlock:^(UIScene _Nonnull scene, BOOL _Nonnull scenesStop) { if ([scene isKindOfClass: [UIWindowScene class]]) { UIWindowScene windowScene = (UIWindowScene )scene; [windowScene.windows enumerateObjectsUsingBlock:^(UIWindow _Nonnull windowTemp, NSUInteger idx, BOOL _Nonnull windowStop) { if (windowTemp.isKeyWindow) { window = windowTemp; }else { windowTemp.hidden = YES; [windowTemp removeFromSuperview]; } }]; } }]; } else { window = [[UIApplication sharedApplication].delegate window]; }
首先感谢大佬的辛苦付出,这个库用了很多年了,帮助非常多,白嫖这么多年从不提pr,这次希望能为维护这个库略尽绵薄之力。 如下是这次遇到问题的具体情况:
设备
iPhone 12 Pro Max,iOS 16.1.1
问题
播放器退出全屏后,界面无法交互,检查图层发现是LandscapeWindow未隐藏,定位代码确定是退出全屏时ZFLandscapeRotationManager_iOS16中所修改代码段中获取的fromOrientation、toOrientation都为UIInterfaceOrientationPortrait,导致进入错误的逻辑,LandscapeWindow未执行隐藏逻辑 代码截图
解决
基于以上3点原因建议调换判断条件的位置: