【发布时间】:2023-04-03 08:15:01
【问题描述】:
所以我将 NSArrayController 与我的 NSTableView 一起使用,我想显示自定义行颜色,即使 NSArrayController 没有任何对象。
通常没有 Cocoa 绑定,我可以像这样“欺骗”我的 numberOfRows:
var dataStore = [Person]()
func numberOfRowsInTableView(tableView: NSTableView) -> Int {
if dataStore.count < 20 {
return 20
} else {
return dataStore.count
}
}
然后获取自定义行颜色...
func tableView(tableView: NSTableView, didAddRowView rowView: NSTableRowView, forRow row: Int) {
if row % 2 == 0 { rowView.backgroundColor = NSColor.blueColor() }
else { rowView.backgroundColor = NSColor.reColor() }
}
如何使用 Cocoa 绑定获得相同的空表视图效果?
【问题讨论】:
-
后一种方法是委托方法,无论绑定如何,你仍然可以使用,真正替代了数据源方法
-
是的,我知道,但即使没有任何数据,我也需要让它工作。而且 didAddRowView 只有在添加了一些数据后才有效。
标签: swift cocoa nstableview cocoa-bindings nsarraycontroller