0

我有一个带有小文本框的窗口,绑定到核心数据属性。用户在文本框中输入的值需要在一定的参数范围内。这些参数是动态的。如果输入的值在参数之外,则会显示一个对话框,询问用户是否要恢复到以前的值,将值设置为最小值等。我已经实现了 controlTextDidEndEditing 方法来拦截和验证用户的值进入。我的问题是用户保存或退出时。用户可以输入错误的值,选择保存或退出并保存值,绕过验证。有没有办法在保存之前调用我的验证方法?谢谢!

4

1 回答 1

1

您应该在NSManagedObject子类中实现验证,而不是使用文本字段委托。然后,您可以强制执行哪些值是有效的,并在输入无效值时返回适当的错误消息。这样做意味着模型负责强制执行有效性,这是这样做的合乎逻辑的地方。

在 Core Data 文档的相应部分有更多关于验证的信息。

于 2012-04-21T03:16:59.247 回答