我有一个NSArray,我想使用NSPredicate将某些对象过滤出go ,我希望我可以使用NOT IN,因为我看到我可以很容易地进行IN.

所以我有我的数组:

self.categoriesList

然后我得到了我想要删除的值:

NSArray *parentIDs = [self.cateoriesList valueForKeyPath:@"@distinctUnionOfObjects.ParentCategoryID"];

这为我提供了不想显示的类别的ParentCategoryID列表,因此我想我可以使用NSPredicate删除它们:

self.cateoriesList = [self.cateoriesList filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"CategoryID NOT IN %@",parentIDs]];

此操作失败:

reason: 'Unable to parse the format string "CategoryID NOT IN %@"'

如果我想用它的话,那当然是完美的.

推荐答案

NOT (CategoryID IN %@)美元怎么样?

Ios相关问答推荐

带外部笔划的圆形进度视图

在TVOS中访问SWIFT中的objc++函数时发送给类的无法识别的 Select 符

当操作修改查看条件时,按钮不重复

SWIFT-仅解码感兴趣的元素

如何在expo-react native中从ios平台中排除包

如何删除点击时按钮的不透明动画?

如何从单独的视图更改修饰符的值

为什么这个 SwiftUI 状态在作为非绑定参数传递时没有更新?

占位符文本未显示在 TextEditor 上

Flutter iOS 构建失败并在 ios/Runner/AppDelegate.swift 中出现多个错误

集成 IDNow SDK 时未找到 Xcode FLAnimatedImage.h 文件问题

iOS 8 - 使用自定义演示关闭视图控制器后屏幕空白

UICollectionView - 动态单元格高度?

如何找出坐标之间的距离?

导航控制器自定义过渡动画

iOS - 确保在主线程上执行

每个版本的 iOS 都附带什么版本的移动 Safari?

Xcode 8:函数类型不能有参数标签 destruct 我的构建

正确的领域使用模式/最佳实践?

在 iOS 上没有显示数字键盘