gpt4 book ai didi

objective-c - UIAlertController:supportedInterfaceOrientations 被递归调用

转载 作者:IT老高 更新时间:2023-10-28 11:44:37 29 4
gpt4 key购买 nike

当两个警报一一出现时,我的意思是一个警报出现,另一个警报出现并且应用程序崩溃。我使用 UIAlertController 来显示警报。应用程序仅在 iOS 9 设备中崩溃。

此时请帮助我。

最佳答案

这是 iOS 9 中的一个错误,它无法检索 UIAlertControllersupportedInterfaceOrientations。在寻找 UIAlertControllersupportedInterfaceOrientations 时,它似乎陷入了无限递归循环(例如,它回溯到 UIAlertControler -> UIViewController -> UINavigationController -> UITabBarController -> UIAlertController -> ...),同时调用 UIAlertController:supportedInterfaceOrientations 实际上没有在源代码中实现/覆盖。

在我的解决方案中,我只是添加了以下代码:

extension UIAlertController {     
public override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask {
return UIInterfaceOrientationMask.Portrait
}
public override func shouldAutorotate() -> Bool {
return false
}
}

那么UIAlertController会直接返回支持的方向值,没有无限循环。希望对您有所帮助。

编辑:Swift 3.0.1

extension UIAlertController {
open override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
return UIInterfaceOrientationMask.portrait
}
open override var shouldAutorotate: Bool {
return false
}
}

关于objective-c - UIAlertController:supportedInterfaceOrientations 被递归调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31406820/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com