2015-04-03 48 views
0

我跟着這個tutorial而不是nib文件,我用故事板。我不知道我做了什麼錯誤。當我運行它時,它只顯示10個tableview單元格,它不顯示我傳遞的值。NSTableView不工作

這是我使用的代碼 - >

this is the storyboard view // MARK: - NSTableViewDataSource

func numberOfRowsInTableView(aTableView: NSTableView!) -> Int { 
     return 10 
    } 

    func tableView(tableView: NSTableView!, viewForTableColumn tableColumn: NSTableColumn!, row: Int) -> NSView! { 
     // 1 
     var cellView: NSTableCellView = tableView.makeViewWithIdentifier(tableView.identifier, owner: self) as NSTableCellView 

     // 2 
     if tableColumn.identifier == "BugColumn" { 
      // 3 

      cellView.imageView!.image = NSImage(named: "delete")! 
      cellView.textField!.stringValue = "Alvin" 
      return cellView 
     } 

     return cellView 
    } 



override func awakeFromNib() 
    { 
     self.tableView.setDataSource(self) 
     self.tableView.setDelegate(self) 
    } 

請幫我搞清楚,我在這裏失蹤?輸出:我只是得到默認的tableView單元十倍,有我在dataSource給出的值。提前致謝。

+0

你爲什麼標籤作爲iOS的你的問題時,你的代碼顯然是OSX(NSImage中,NSTableView的)? – 2015-04-03 05:35:20

+0

@LeonardoSavioDabus是的,我是一個錯誤。 – 2015-04-03 06:00:31

回答

0

您正在使用的tableView的標識,而是你應該使用的TableColumn的一個:

var cellView: NSTableCellView = tableView.makeViewWithIdentifier(tableView.identifier, owner: self) as NSTableCellView 
//                ^^^^^^^^^ 

var cellView: NSTableCellView = tableView.makeViewWithIdentifier(tableColumn.identifier, owner: self) as NSTableCellView