gpt4 book ai didi

ios - NSNotification Random Like 无法识别的异常

转载 作者:行者123 更新时间:2023-11-30 14:05:56 24 4
gpt4 key购买 nike

我正在尝试使用 NSNotification 在两个 swift 类之间进行通信。我不知道我做错了什么,但其他通知工作正常的地方,其中之一不断给出随机发送到实例异常的无法识别的选择器。我所说的随机是指每次执行该代码时异常都是相同的,但类引用不同,例如 __CALayer、__NSArray、__NSSet 等,我什至不直接使用这些类。有什么帮助吗?

这是观察者类的初始化方法:

override init() {
super.init()
NSNotificationCenter.defaultCenter().addObserver(self, selector: "downloadChapter:", name: "downloadListNotification", object: DisplayMangaViewController.self)
NSNotificationCenter.defaultCenter().addObserver(self, selector: "downloadChapter:", name: "downloadListNotification", object: DownloadRequestListViewController.self)
}

以及我在里面发布通知的那个:

let userInfo = ["downloadList" : self.selectedChapters , "mangaName" : self.obtainedMangaName]
let notification = NSNotification(name: "downloadListNotification", object: DownloadRequestListViewController.self, userInfo: userInfo as [NSObject : AnyObject])
NSNotificationCenter.defaultCenter().postNotification(notification)

以下是一个异常(exception)示例:

2015-09-05 19:49:45.598 TurkİşManga[12708:58814] -[__NSArrayM downloadChapter:]: unrecognized selector sent to instance 0x7fbf9c80dd90 2015-09-05 19:49:45.600 TurkİşManga[12708:58814] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayM downloadChapter:]: unrecognized selector sent to instance 0x7fbf9c80dd90'

这里还有 downloadChapter 方法的草稿:

func downloadChapter(notification : NSNotification){}

最佳答案

显然我的观察者类被释放,因此当通知发布时会有任何观察者。因此,在发布任何通知之前,从观察者类创建一个实例已经解决了问题。谢谢。

关于ios - NSNotification Random Like 无法识别的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32415631/

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