设置:
我的ViewController代码是这样的:
import Cocoa
class ViewController: NSViewController, NSTableViewDataSource {
@IBOutlet var tableView: NSTableView!
let data = [
["FirstName": "Debasis", "LastName": "Das"],
["FirstName": "Nishant", "LastName": "Singh"],
["FirstName": "John", "LastName": "Doe"],
["FirstName": "Jane", "LastName": "Doe"],
["FirstName": "Mary", "LastName": "Jane"]
]
override func viewDidLoad() {
super.viewDidLoad()
tableView.setDataSource(self)
}
override var representedObject: AnyObject? {
didSet {
}
}
func numberOfRowsInTableView(tview: NSTableView) -> Int {
return data.count
}
func tableView(tview: NSTableView, objectValueForTableColumn col: NSTableColumn?, row: Int) -> AnyObject? {
return "row \(row) col \(col?.identifier)"
}
}
从storyView插座到故事板中的NSTableView有一个连接。
运行此应用程序时,您会得到一个包含5行的表格视图,但是每个单元格的内容都是“Table View Cell”。我试过只返回“1”,数字1,各种其他对象,但我不能让它显示我从tableView方法返回的内容。我假设AnyObject返回需要特定的东西(就像在调用者中有一个checkof实例),但是我发现的所有示例代码都返回字符串并且事情有效,所以事情都发生了变化或我的代码出错了在某种程度上,我无法弄明白。
答案 0 :(得分:1)
如果您只是在进行包含表视图的视图,我建议您只使用UITableViewController
。从模板中创建一个,应该更容易让它运行起来。
答案 1 :(得分:1)
我在搜索Apple Dev论坛后找到了答案:
具体而言,绑定方法很容易。