Swift 核心数据显示在 OS X Tableview 中
Swift Core Data displayed in OS X Tableview
我是 xCode 和 Swift 的新手。我曾经使用 Visual Studio - Visual Basic 开发软件。
我正在浏览教程、教程和教程,但我找不到如何在 NStableview Swift 中显示在 Swift 中创建的核心数据实体的示例 MAC OS X应用。所有教程都是针对iOS应用的。
我已经创建了保存方法,但我需要做的就是在表格视图中显示我保存的记录。我怎样才能做到这一点?
有没有人可以给我一些建议。
准备
首先,你的 ViewController 必须继承自 NSTableViewDelegate
和 NSTableViewDataSource
:
class ViewController: NSViewController, NSTableViewDelegate, NSTableViewDataSource
然后,就像在 iOS 中一样,您必须为 NSTableView
实现委托方法。
制作一个 IBOutlet
,类似于:
@IBOutlet weak var tableView: NSTableView!
委托和数据源
然后在viewDidLoad()中,设置delegate和dataSource为self:
tableView.setDelegate(self)
tableView.setDataSource(self)
并实现所需的方法:
为行数:
func numberOfRowsInTableView(tableView: NSTableView) -> Int {
return yourData.count //your data ist the array of data for each row
}
对于行数据:
func tableView(tableView: NSTableView, objectValueForTableColumn tableColumn: NSTableColumn?, row: Int) -> AnyObject? {
if tableColumn!.title == "firstColumnTitle" //if you have more columns
{
return yourData[row].first
}
else //second column
{
return return yourData[row].second
}
}
供选择:(可选)
func tableViewSelectionDidChange(notification: NSNotification) {
var row = tableView.selectedRow
// a row was selected, to something with that information!
}
如有任何疑问,请不要犹豫!
我是 xCode 和 Swift 的新手。我曾经使用 Visual Studio - Visual Basic 开发软件。
我正在浏览教程、教程和教程,但我找不到如何在 NStableview Swift 中显示在 Swift 中创建的核心数据实体的示例 MAC OS X应用。所有教程都是针对iOS应用的。
我已经创建了保存方法,但我需要做的就是在表格视图中显示我保存的记录。我怎样才能做到这一点? 有没有人可以给我一些建议。
准备
首先,你的 ViewController 必须继承自 NSTableViewDelegate
和 NSTableViewDataSource
:
class ViewController: NSViewController, NSTableViewDelegate, NSTableViewDataSource
然后,就像在 iOS 中一样,您必须为 NSTableView
实现委托方法。
制作一个 IBOutlet
,类似于:
@IBOutlet weak var tableView: NSTableView!
委托和数据源
然后在viewDidLoad()中,设置delegate和dataSource为self:
tableView.setDelegate(self)
tableView.setDataSource(self)
并实现所需的方法:
为行数:
func numberOfRowsInTableView(tableView: NSTableView) -> Int {
return yourData.count //your data ist the array of data for each row
}
对于行数据:
func tableView(tableView: NSTableView, objectValueForTableColumn tableColumn: NSTableColumn?, row: Int) -> AnyObject? {
if tableColumn!.title == "firstColumnTitle" //if you have more columns
{
return yourData[row].first
}
else //second column
{
return return yourData[row].second
}
}
供选择:(可选)
func tableViewSelectionDidChange(notification: NSNotification) {
var row = tableView.selectedRow
// a row was selected, to something with that information!
}
如有任何疑问,请不要犹豫!