在NSTableView中更改所选单元格中的数据

时间:2015-09-20 20:53:14

标签: swift nstableview

我有NSTableView,单元格作为自定义视图(NSCellView)。如何在选择该单元格时引用此单元格并更改数据?

tableViewSelectionDidChange我无法获得对此单元格的引用(空通知),tableView willDisplayCell不使用单元格作为视图,tableView.selectedCell()仅返回默认单元格的数据(不是作为意见)。

1 个答案:

答案 0 :(得分:1)

调用viewAtColumn(_:row:makeIfNecessary:),传递相应列的列索引,所选行的索引和true。您需要将其强制转换为您的单元格视图类。

顺便说一下,不要为自己的类使用NS前缀(NSCellView)。使用特定于您的组织或项目的前缀。 NS保留给Cocoa。

访问指定单元格的代码示例:

func tableView(tableView: NSTableView, shouldSelectRow row: Int) -> Bool {
    let cell = tableView.viewAtColumn(0, row:row, makeIfNecessary:true)
}