我已经使用IB进行了绑定,并且在基于视图的NSTableView中,我有两列,分别为First
和Second
,它们都有整数值。我需要能够比较它们,所以我可以更改它们的文本颜色,以便阅读。如何将基于视图的NSTableView的单元格值与Swift中的另一个单元格进行比较?
我有子类都一样,(除了一个是FirstColumn
:
import Cocoa
class SecondColumn: NSTableCellView {
override func drawRect(dirtyRect: NSRect) {
super.drawRect(dirtyRect)
// Here I Can change text color
self.textField?.textColor = NSColor.redColor()
// But I want be able to compare that textField value to my first column's value
}
}
我想有只有第二栏的文本是红色的,如果它的值比第一列值小,所以我必须努力。让IBOutlet中我SecondColumn
类是这样的:
@IBOutlet weak var firstColumn: FirstColumn!
然后是错误信息,说我不能这样做,所以我wan't做这样的事情:
var secondValue = self.textField?.integerValue
var firstValue = // I don't know how i can get that??
if firstValue > secondValue {
self.textField?.textColor = NSColor.redColor()
} else {
self.textField?.textColor = NSColor.greenColor()
}
那么,我该怎么做,并有无论如何在IB做?
我有被绑定的ArrayController到ManagedObjectContext并从实体获取其数据。我的tableview是绑定到ArrayController等。它工作正常,并显示正确的数据(在真实的应用程序中,我有比在我的例子中更复杂的数据,但同样的问题) – Prontto 2014-12-05 10:10:22
而且我也使用文本字段单元格视图的绑定。 – Prontto 2014-12-05 10:11:38
谢谢你的回答,我现在想弄明白。 – Prontto 2014-12-05 10:19:40