向观察者添加完成功能时应用崩溃

时间:2020-06-23 12:51:54

标签: swift swift3 swift4

我正在尝试向通知观察者添加一个块,但是在移动前景和背景时应用程序崩溃了。如果我向观察者添加方法可以正常工作,则只有在其崩溃的情况下才可以。这是我正在尝试的代码。

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        
        NotificationCenter.default.addObserver(self, selector: #selector(foregroundEntered(closure:)), name: UIApplication.willEnterForegroundNotification, object: nil)
        // Do any additional setup after loading the view.
    }

    
    @objc func foregroundEntered(closure: () -> Void) {
        /// do some stuff
    }
        
    override func viewDidDisappear(_ animated: Bool) {
        super.viewDidDisappear(animated)
        NotificationCenter.default.removeObserver(self, name: UIApplication.willEnterForegroundNotification, object: nil)
    }
}

谢谢。

1 个答案:

答案 0 :(得分:1)

替换

@objc func foregroundEntered(closure: () -> Void) { 

使用

@objc func foregroundEntered(_ notif: NSNotification) {

然后改变

NotificationCenter.default.addObserver(self, selector: #selector(foregroundEntered), name: UIApplication.willEnterForegroundNotification, object: nil)
相关问题