尝试传回userInfo时,NSNotification在Swift中破坏

时间:2015-03-10 19:18:33

标签: ios swift notifications notificationcenter

我在尝试通过Swift中的postNotification传回userInfo时遇到问题。奇怪的是代码只在我尝试使用userInfo时中断 - 如果我将没有数据的通知发布到没有参数的选择器,一切正常。但是当我尝试传回userInfo时,我得到一个"无法识别的选择器发送到实例"错误。所以我的ViewController中的选择器签名出了问题,但我无法弄清楚是什么。

以下是破解的代码:

在我的表格视图中

let data = ["selection": selectedOption]
dismissViewControllerAnimated(true, completion: {NSNotificationCenter.defaultCenter().postNotificationName(wordsetPickedNotification, object: self, userInfo: data)})

在我的视图控制器中:

NSNotificationCenter.defaultCenter().addObserver(self, selector: "wordsetPicked", name: wordsetPickedNotification, object: nil)
...
func wordsetPicked(n:NSNotification) {
    //do stuff
}

1 个答案:

答案 0 :(得分:2)

selector: "wordsetPicked"更改为selector: "wordsetPicked:"