在 NSTableView 中更改选定单元格中的数据
Change data in selected cell at NSTableView
我有 NSTableView,单元格作为自定义视图 (NSCellView)。如何获取对该单元格的引用并在选择该单元格时更改其中的数据?
来自 tableViewSelectionDidChange
我无法获取此单元格的引用(空通知),tableView willDisplayCell
无法将单元格用作视图,tableView.selectedCell()
仅为默认单元格返回数据(不是作为观点)。
调用viewAtColumn(_:row:makeIfNecessary:)
,传递相应列的列索引、所选行的索引和真值。您需要将其投射到您的单元格视图 class.
顺便说一下,不要为您自己的 classes (NSCellView
) 使用 NS
前缀。使用特定于您的组织或项目的前缀。 NS
保留给 Cocoa。
访问指定单元格的代码示例:
func tableView(tableView: NSTableView, shouldSelectRow row: Int) -> Bool {
let cell = tableView.viewAtColumn(0, row:row, makeIfNecessary:true)
}
我有 NSTableView,单元格作为自定义视图 (NSCellView)。如何获取对该单元格的引用并在选择该单元格时更改其中的数据?
来自 tableViewSelectionDidChange
我无法获取此单元格的引用(空通知),tableView willDisplayCell
无法将单元格用作视图,tableView.selectedCell()
仅为默认单元格返回数据(不是作为观点)。
调用viewAtColumn(_:row:makeIfNecessary:)
,传递相应列的列索引、所选行的索引和真值。您需要将其投射到您的单元格视图 class.
顺便说一下,不要为您自己的 classes (NSCellView
) 使用 NS
前缀。使用特定于您的组织或项目的前缀。 NS
保留给 Cocoa。
访问指定单元格的代码示例:
func tableView(tableView: NSTableView, shouldSelectRow row: Int) -> Bool {
let cell = tableView.viewAtColumn(0, row:row, makeIfNecessary:true)
}