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只有一列,并且在标题隐藏的情况下,我们甚至忘记了它们的存在
没有任何列,其他一切都正常工作。背景行加载和选择工作-这让我找到了这个解决方案。也许,你可以帮我解决另一个相关问题,