我有NSTableView
从NSArrayController
获取数据,我需要删除当前选中的行。我知道NSManagedObjectContext
有一个deleteObject:
方法,但我想不出如何从NSArrayController
删除它。
答案 0 :(得分:3)
使用NSArrayController
的{{3}}操作。
答案 1 :(得分:1)
以编程方式删除
[NSArrayController removeObjectAtArrangedObjectIndex:NSInteger];
或
[NSArrayController removeObjectAtArrangedObjectIndexes:NSIndexset];
答案 2 :(得分:0)
@ NewStack在Swift 3中的回答:
ArrayController.remove(atArrangedObjectIndex: Int)
答案 3 :(得分:0)
dreamlax,NewStack和styl3r的答案是正确的。但是,如果要在代码中执行此操作,则答案如下:
@IBOutlet var notesResultsController: NSArrayController!
@IBAction func deleteSelectedNote(_ sender: Any) {
let selectedRow = tableView.selectedRow
notesResultsController.remove(atArrangedObjectIndex: selectedRow)
}
将NSArrayController拖到ViewController上并连接其出口。 在界面中添加一个按钮,并将其操作关联到“ deleteSelectedNote”。