2015-05-29 85 views
1

我是xcode和Swift的新手。我曾经使用Visual Studio开发软件 - Visual Basic。Swift Core Data在OS X中显示Tableview

我正在浏览教程和教程和教程,但无处可以找到如何在NStableview MAC OS X应用程序中显示在Swift中创建的Core Data Entity的示例。所有的教程都是针对iOS应用程序的。

我已经创建了储蓄方法,但我只需要在tableview中显示我保存的记录。我怎样才能做到这一点? 有没有人可以给我这方面的建议。

+0

你了解Obj-C吗? –

回答

4

准备

首先,你的ViewController必须从NSTableViewDelegateNSTableViewDataSource继承:

class ViewController: NSViewController, NSTableViewDelegate, NSTableViewDataSource 

然后,像iOS中必须实现的NSTableView委托方法。

做一个IBOutlet,是这样的:

@IBOutlet weak var tableView: NSTableView! 

代表和DataSource

然后在viewDidLoad中(),设置委托和数据源,以自我:

tableView.setDelegate(self) 
tableView.setDataSource(self) 

而实施所需方法:

对于行数:

func tableViewSelectionDidChange(notification: NSNotification) { 
    var row = tableView.selectedRow 
    // a row was selected, to something with that information! 
} 

如果您有任何(可选):

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 
    } 

} 

供选择问题,请不要犹豫!

+0

谢谢,非常感谢。我会看看这个。这是一个完全不同于我习惯的编码世界。 –

+0

没有难过的感觉。我们都去过那儿。 –

相关问题