【发布时间】:2012-06-25 17:00:22
【问题描述】:
我想将NSTextField 的布尔值enabled 属性绑定到NSButton 的状态。我已经尝试添加自定义NSValueTransformer,将NSButton 的状态转换为NSNumber。但是,在这种情况下,由于某种原因,文本字段一直被禁用。我的第二种方法:To bad 也失败了,因为 NSValueTransformer 不提供返回原语类型,例如 BOOL。
示例:
屏幕截图显示了一个示例,其中文本字段被禁用,因为复选框的状态为NSOnState。我也想将标签绑定到这个状态。
此外,如果我可以在 Interface Builder 中设置“禁用文本”,那将会很方便。在上面的示例中,我在关联的类中设置了文本。
编辑:
我将self.anonymousLoginCheckbox.state 设置为帐户文本字段的enabled 属性的模型键路径。密码文本字段类似。但是,它不起作用。
更新:
我创建了一个 example project available on GitHub showing the implementation,由 Nicolas Bachschmidt 亲切地描述。
【问题讨论】:
标签: cocoa state cocoa-bindings nstextfield nsvaluetransformer