我有一个模态对话框,那就是建立一个字符串。向用户显示该字符串,然后用户按下复选框,单选框等来构建字符串。字符串不存在-我将其构建为在-()builtString;中显示。来自self.valuesDict的配置。

我可以通过IB中的绑定轻松地将复选框连接起来:例如使用self.valuesDict.checkbox1连接到文件所有者(控制器)

我也将字符串的显示绑定到“ self.builtString”。

但是,每当复选框更改时,我都想重新显示显示给用户的字符串。

如果我放弃绑定,那么我认为可以为每个复选框使用[self willChangeValueForKey:@“ builtString”],等等,但是当我处理它们时,这看起来有些混乱。

那么,当每次self.valuesDict变化时,如何告诉IB中的nstextfield更新?

感谢您的任何意见/建议。

-汤姆

最佳答案

您可以指定绑定之间的依赖关系。只需编写一个类方法+(NSSet*) keyPathsForValuesAffectingBuiltString即可返回一个包含所有builtString属性的关键路径的集合。然后,当其他属性之一更改时,绑定到字符串的内容也将更新。有关更多详细信息和分步说明,请查看this article

09-25 19:16