gpt4 book ai didi

ios - 无法识别的选择器使用通知发送到 ViewController 中的实例

转载 作者:行者123 更新时间:2023-11-28 13:13:25 25 4
gpt4 key购买 nike

我一直在四处寻找修复方法,但似乎无法自行修复。

我正在尝试通过我的 Controller - 模型发送通知。我在我的 appdelegate 上收到一条错误消息:

[Test.ViewController naamInModelChangedHandler]: unrecognized selector sent to instance 0x7f81c85006c0

我像这样在 viewDidLoad 中发送通知:

        NSNotificationCenter.defaultCenter().addObserver(
self,
selector: "naamInModelChangedHandler",
name: "NAAM_CHANGED",
object: model)

在我的 ViewController 中,我做了一个这样的函数:

    func naamInModelChangedHandler ( notification:NSNotification ) {
println("De naam in de model is veranderd naar \(model.naam!)")
NSNotificationCenter.defaultCenter().removeObserver(
self,
name: "NAAM_CHANGED",
object: model)
}

这就是我的模型的样子(但我不认为这与它有任何关系?:

var naam: String? {
didSet {
NSNotificationCenter.defaultCenter().postNotificationName("NAAM_CHANGED", object: self)
}

谁能帮我解决这个错误?

最佳答案

选择器的名称应为 "naamInModelChangedHandler:"。请注意 :,因为 naamInModelChangedHandlerNSNotification 作为参数。因此,您应该像这样添加观察者:

NSNotificationCenter.defaultCenter().addObserver(
self,
selector: "naamInModelChangedHandler:",
name: "NAAM_CHANGED",
object: model)

关于ios - 无法识别的选择器使用通知发送到 ViewController 中的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30288288/

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