IOS/目标 C:Coredata NSPredicate 与布尔值
Posted
技术标签:
【中文标题】IOS/目标 C:Coredata NSPredicate 与布尔值【英文标题】:IOS/Objective C: Coredata NSPredicate with boolean 【发布时间】:2017-06-27 21:36:53 【问题描述】:我在 Coredata 中有一个名为“hide”的布尔属性。在nsmanagedobject
文件中,变量是NSNumber
。
@property (nonatomic, strong) NSNumber *hide;//bool
在某些情况下,我想排除或“隐藏”隐藏值为 1 的项目。 我为此使用的谓词是:
hideClause = @"hide != 1";
hidePred = [NSPredicate predicateWithFormat:hideClause];
但是,逻辑未按预期工作。即使我确定 hide 的值不是 1,FRC 也不会返回项目。
谁能看出哪里出了问题?
【问题讨论】:
***.com/a/8784043/1801544 ? 【参考方案1】:使用下面的谓词:
hidePred = [NSPredicate predicateWithFormat:@"hide != %@", [NSNumber numberWithBool:YES]]
【讨论】:
试过但没有运气。结果相同。 试试 [NSPredicate predicateWithFormat:@"NOT (hide == %@)", [NSNumber numberWithBool:YES]]以上是关于IOS/目标 C:Coredata NSPredicate 与布尔值的主要内容,如果未能解决你的问题,请参考以下文章
如何解决 AppDelegate 中的 coreData 错误?
iOS - 将 sqlite 复制到 CoreData 的捆绑包
唯一性约束功能需要 ios 部署目标 9.0 或更高版本 - Core Data