我已經使用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