Swift 未调用tableColumn委托方法的NSTableView视图

Swift 未调用tableColumn委托方法的NSTableView视图,swift,xcode,macos,cocoa,nstableview,Swift,Xcode,Macos,Cocoa,Nstableview,在代码中,我有如下内容: let scrollView = NSScrollView() let tableView = NSTableView() override func viewDidLoad() { super.viewDidLoad() // Do view setup here. tableView.delegate = self tableView.dataSource = self tableView.headerView = nil

在代码中,我有如下内容:

let scrollView = NSScrollView()
let tableView = NSTableView()

override func viewDidLoad() {
    super.viewDidLoad()
    // Do view setup here.

    tableView.delegate = self
    tableView.dataSource = self
    tableView.headerView = nil

    scrollView.documentView = tableView
    scrollView.hasVerticalScroller = true

    self.view.addSubview(scrollView)

}

声明了两个必需的方法(
numberOfRows
和标题中的方法)。TableView在视图中可见、可滚动且可选择
tableView selectiondidchange
工作正常,我可以通过
tableView.selectedRow
获取所选行的索引。但是所有单元格都是空的,因为
tableView(\utableview:NSTableView,viewfortablecolumn:NSTableColumn?,row:Int)
没有调用任何单元格。我认为,问题是tableView现在无法确定哪些单元格是可见的。但我不知道该怎么处理这个问题。我挣扎了一会儿,但很快就明白了。您生成的
tableView
很好

唯一缺少的是一列。 只需添加一列即可:

tableView.addTableColumn(NSTableColumn(identifier: "Column"))
表视图在列中显示其视图。大多数tableview只有一列,并且在标题隐藏的情况下,我们甚至忘记了它们的存在


没有任何列,其他一切都正常工作。背景行加载和选择工作-这让我找到了这个解决方案。

也许,你可以帮我解决另一个相关问题,