我的xib文件中的NSTableView
中有一个NSWindow
。 Interface Builder中的xib可以是视图here。我正在使用基于视图的表视图。
我的问题是tableView
中单元格的textField只填充到表格的高度。从那时起,tableView:viewForTableColumn:row:
不再被调用,剩下的行数正确,但大多数行没有文本。图here。
我实现的dataSource
和delegate
方法如下:
// MARK: - Table View Data Source
func numberOfRows(in tableView: NSTableView) -> Int {
return builds.count
}
func tableView(_ tableView: NSTableView, viewFor tableColumn: NSTableColumn?, row: Int) -> NSView? {
guard let cellView = tableView.makeView(withIdentifier: tableColumn!.identifier, owner: nil) as? NSTableCellView else {
return nil
}
let formatter = DateFormatter()
formatter.dateFormat = "MMM d, yyyy"
cellView.textField?.stringValue = formatter.string(from: builds[row].buildDate)
return cellView
}
我已经坚持了大约一天,并且没有取得太大进展。我将不胜感激
答案 0 :(得分:0)
甜耶稣,我知道了。我的红色NSWindowController
马上就被取消了初始化,因此在tableView的可见部分显示了单元格,然后什么也没有显示!保留对控制器的引用即可解决此问题。