此问题是this问题的扩展。
我正在使用Cocoa App,我使用Cocoa Bindings
填充表格。
我正在继承NSView而不是NSTableCellView
根据NSTableCellView Class Referenence
如果您使用不基于的自定义视图单元格 NSTableCellView你应该实现这个属性(objectValue)才能够 接收单元格值的更改。
另外
迅速
var objectValue:AnyObject?
使用绑定时,objectValue由表自动设置,或者是... ...
这是我的类实现,我将在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)
}
}
虽然在TestClass中声明了objectValue
,但我仍然无法从IB绑定对象值
答案 0 :(得分:2)
自定义视图和对象在IB中不会获得自定义属性绑定。你必须在代码中设置绑定。
您还需要确保您的课程能够完成启用绑定所需的所有有趣内容。