Этот вопрос является расширением этого вопроса.
Я работаю над приложением Cocoa, где я заполняю таблицу, используя Cocoa Bindings
.
Я подклассифицирую NSView вместо NSTableCellView
Согласно Справочник по классу NSTableCellView
Если вы используете свои собственные настраиваемые ячейки представления, не основанные на NSTableCellView, вам следует реализовать это свойство (objectValue), чтобы иметь возможность получать изменения значений ячеек.
Также
swift
var objectValue: AnyObject?
Объектное значение автоматически устанавливается таблицей при использовании привязок или...
Это реализация моего класса, которую я буду использовать как ячейку в TableView.
class TestView : NSView {
var objectValue: AnyObject?
init(nameA: String, nameB: String) {
super.init(frame: NSMakeRect(3, 3, 300, 40))
objectValue = nameA
let firstName = MyTextField(location: NSMakePoint(10, 10), stringVal: nameA)
self.addSubview(firstName)
let secondName = MyTextField(location: NSMakePoint(250, 10), stringVal: nameB)
self.addSubview(secondName)
}
required init?(coder: NSCoder) {
super.init(coder: coder)
}
}
Хотя я объявил objectValue
в TestClass, я все еще не могу связать значение объекта из IB