gpt4 book ai didi

swift - 在 Swift 2.1 中通过 NSNotificationCenter.defaultCenter() 监听 NSArrayController 中的项目选择的正确方法是什么

转载 作者:行者123 更新时间:2023-11-30 13:10:29 32 4
gpt4 key购买 nike

我有一个通过 NSArrayController 使用绑定(bind)填充的 NSCollectionView。

我所尝试的就是向 NSArrayController 或 NSCollectionView 添加一个观察者,这样当选择发生变化时我就会调用一个函数。

例如,这就是我正在为 NSTextField 更改所做的事情:

NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(self.textDidChange(_:)), name: NSTextViewDidChangeSelectionNotification, object: nil)

我正在寻找正确的方法。

最佳答案

可以用这个简单的代码实现:

将此添加到 applicationDidFinishLaunching :

self.fileListArrayController.addObserver(self, forKeyPath: "selectionIndexes", options: .New, context: nil)  

每次用户/程序在我的 NSArrayController 中选择一个项目时,都会调用此函数

override func observeValueForKeyPath(keyPath: String?, ofObject object: AnyObject?, change: [String : AnyObject]?, context: UnsafeMutablePointer<Void>) {  
print(keyPath)
}

关于swift - 在 Swift 2.1 中通过 NSNotificationCenter.defaultCenter() 监听 NSArrayController 中的项目选择的正确方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38793144/

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