我有一个基于CellBased的NSTableView。我需要在Button Click上填充它。我编写了用于填充实现NSTableViewDataSource协议的表的代码。我使用数组作为数据源。
代码如下
func numberOfRowsInTableView(tableView: NSTableView) -> Int {
let numberOfRows:Int = dataArray.count
return numberOfRows
}
func tableView(tableView: NSTableView, objectValueForTableColumn tableColumn: NSTableColumn?, row: Int) -> AnyObject? {
}
但是当我启动应用程序时,一切都被加载了。我希望数据加载到按钮上像IBACtion一样
@IBAction func findButton(sender: AnyObject) {
}
请帮忙!
答案 0 :(得分:1)
不要通过界面构建器或其他地方设置委托,在按钮中设置它:
@IBAction func findButton(sender: AnyObject) {
self.tableView.dataSource = self
self.tableView.delegate = self
self.tableView.reloadData()
}
答案 1 :(得分:1)
尝试将UITableView.dataSource设置为nil。然后当你准备好(按钮点击)时,调用tableView.dataSource = self。您可能还必须调用tableView.reloadData()。
没有对此进行测试,但理论上应该有效。