繁体   English   中英

可可绑定:手动更新NSObjectController吗?

[英]Cocoa-Bindings : Update NSObjectController manually?

在我的小可可应用程序中,我借助NSObjectController将类的属性绑定到了一些文本字段。 到目前为止,我唯一的问题是:在NSObjectController使用当前输入更新该类之前,您始终必须保留文本字段。

如果用户不离开texfield并立即单击“保存/提交”按钮,这将成为问题。 该类不包含当前输入。 总是一件坏事。

我正在寻找避免这种情况的方法。 就像告诉NSObjectController获取当前输入一样,即使用户已经退出该字段也是如此。 如果可能的话,我可以在保存之前将该命令放入save-Method中,一切都会好的。

将“ commitEditing消息发送到处理程序中的“确定”按钮的控制器。 这将满足您的要求。 就像这样简单:

- (void)save:sender {
    if (![self.myObjectController commitEditing]) {
        // Handle error when object controller can't commit editing
    }

    // Other stuff
}

如果转到文本字段的value绑定并选中“连续更新值”选项,则每次用户更改该值时,都会在模型对象上设置新值,即每次击键一次。 这将确保模型在关闭窗口之前具有正确的值,尽管这可能有点过大,具体取决于数据模型中设置的值的影响(如果有)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM