3

我有一个NSTableView从中获取数据的NSArrayController,我需要删除当前选定的行。我知道NSManagedObjectContext有一种deleteObject:方法,但是我想不出如何从NSArrayController.

4

4 回答 4

4

使用NSArrayController'remove:动作。

于 2010-01-15T03:03:44.990 回答
1

以编程方式删除

[NSArrayController removeObjectAtArrangedObjectIndex:NSInteger];

或者

[NSArrayController removeObjectAtArrangedObjectIndexes:NSIndexset];
于 2012-12-04T09:31:32.947 回答
1

@NewStack 在 Swift 3 中的回答:

ArrayController.remove(atArrangedObjectIndex: Int)
于 2017-09-10T06:52:45.563 回答
0

Dreamlax、NewStack、styl3r 的答案是正确的。但是,如果您想在代码中执行此操作,答案如下:

@IBOutlet var notesResultsController: NSArrayController!
@IBAction func deleteSelectedNote(_ sender: Any) {

    let selectedRow = tableView.selectedRow
    notesResultsController.remove(atArrangedObjectIndex: selectedRow)
}

将 NSArrayController 拖到 ViewController 上并连接它的插座。在您的界面中添加一个按钮并将其操作连接到“deleteSelectedNote”。

于 2020-04-17T06:55:42.793 回答