我正在为macOS开发一个简单的notes应用程序。我有一个主页,它有一个显示您所有笔记的NSTableView,当您单击新笔记按钮时,会出现一个新视图,您可以在其中创建新笔记。单击注释后,它会将新注释添加到数据库中,并应重新加载表视图数据,但我需要停止当前运行并再次运行程序以查看更改。
我用这篇文章在iOS上实现了同样的效果,但它似乎在MacOS 上不起作用
那么我该如何适应:
override func viewDidLoad() {
super.viewDidLoad
NotificationCenter.default.addObserver(self, selector: #selector(loadList), name: NSNotification.Name(rawValue: "load"), object: nil)
}
在主页VC
和线路:
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "load"), object: nil)
保存内部NewNote IBAction以在macOS中工作?你甚至可以在macOS应用程序中使用NotificationCenter吗?还是只在iOS上使用?
NSNotificationCenter是Foundation框架的一部分,因此它肯定可以在macOS上使用。
你应该能够像在iOS上使用它一样使用它。如果您有一个名为saveNewNote
的IBAction
,那么在该方法中,您可以按照您编写的方式处理通知。在拥有该表的视图控制器中,像您所写的那样添加观察者,然后重新加载该表。。。
如果它不起作用,我们可能需要一些代码示例来说明如何在Mac应用程序上设置它,以便更好地了解什么不起作用。