我仍然在我的核心数据配置数据中混入布尔值。 NSManagedObject可以说是一个核心数据“ config”类,可以快速键入以下内容,而不会出现错误:

  if (self.myCoreDataConfigObject.isOn) { ...


但是它没有给出正确的结果,因为需要将NSNumber转换为bool:

  if ([self.myCoreDataConfigObject.isOn boolValue]) { ...


问题-有关如何避免这种情况的任何提示/技巧?如果XCode在这种情况下显示警告,那就太好了……

最佳答案

您可以将字段重命名为类似isOnValue的名称,然后在名为NSManagedObjectisOn子类上提供一个访问器,该访问器将为您运行-boolValue转换。

但是,请不要忘记,“可选”值可能是nil,您可能会认为它与NO不同。

关于iphone - 如何防止在核心数据中滥用 bool 值(即忘记将“boolValue”放入NSNumber进行转换),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7590753/

10-09 16:19
查看更多