为什么SVProgressHUD抛出Orrr



我正在尝试集成SVProgressHUD库,并希望在我的控制器上的API响应之前显示我已经编写了一个代码,但它抛出了一个错误,如线程1:"-[MOWEB.AppDelegate窗口]:无法识别的选择器发送到实例0x600001bc2a40">

//ViewController.swift

import UIKit
import SVProgressHUD
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}

override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
SVProgressHUD.setDefaultMaskType(.clear)
SVProgressHUD.setDefaultStyle(.custom)
SVProgressHUD.setForegroundColor(UIColor.white)
SVProgressHUD.setBackgroundColor(#colorLiteral(red: 0.1333333333, green: 0.3764705882, blue: 0.9960784314, alpha: 1).withAlphaComponent(1))
}

}

我猜你的AppDelegate.swift没有窗口属性。即'让窗口;UIWindow图书馆靠它看这里的72行https://github.com/SVProgressHUD/SVProgressHUD/blob/master/SVProgressHUD/SVProgressHUD.m

查看示例演示应用程序了解更多详细信息https://github.com/SVProgressHUD/SVProgressHUD/blob/master/Demo/Classes/AppDelegate.h

我认为该框架还没有适应场景和应用程序委托之间的分离。正如@cloudBalancing所说,您仍然需要在AppDelegate中显式添加窗口属性。

一种建议的解决方法

1.在AppDelegate 中添加窗口属性

var window: UIWindow?

2.在SceneDelegate 中添加以下场景代码(_:willConnectTo:options(方法

let appDelegate = UIApplication.shared.delegate as! AppDelegate appDelegate.window = self.window

相关内容

  • 没有找到相关文章

最新更新