gpt4 book ai didi

swift - NsNotificationCenter 不工作

转载 作者:行者123 更新时间:2023-11-28 15:33:06 30 4
gpt4 key购买 nike

实际上我是 swift 的新手,我被困在这里,任何人都可以解决这个问题。 actOnSpecialNotification Func 没有调用 ViewController.swift 中的 fireNotification

In ViewController.swift

 func fireNotification() -> Void {
NotificationCenter.default.addObserver(self, selector:
#selector(vikas.updateNotificationSentLabel), name:
NSNotification.Name(rawValue: mySpecialNotificationKey), object: nil)
}
func updateNotificationSentLabel() {
print("sent")
}

in SecondVC.swift

 override func viewDidLoad() {
super.viewDidLoad()

NotificationCenter.default.addObserver(self, selector:
#selector(ViewController.actOnSpecialNotification), name:
NSNotification.Name(rawValue: mySpecialNotificationKey), object: nil)
}
func actOnSpecialNotification() {
print("listen")
}

最佳答案

首先将 Observer 添加到您的 FirstViewConroller。

FirstViewConroller

NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(YourClassName.methodOfReceivedNotification(_:)), name:”test”, object: nil)

现在,在同一个 ViewController 中添加相关的选择器方法,一旦通知被触发,该方法就会被调用。

func methodOfReceivedNotification(notification: Notification){
//Take Action on Notification
}

现在,您可以使用以下行触发通知,这将调用驻留在 FirstViewController 中的上述方法

第二 View Controller

NSNotificationCenter.defaultCenter().postNotificationName(“test”, object: nil)

关于swift - NsNotificationCenter 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44567434/

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