从用户的角度来看,使用predicateEditor定义子谓词的最佳方法

时间:2018-08-07 17:43:58

标签: xcode nspredicateeditor

我想知道如何使用NSPredicateEditor从用户的角度定义子谓词-以及如何实现它。

假设我们在IB中创建了一个简单的NSPredicateEditor,如下所示。

enter image description here

它有2个选项可供选择:

  • 姓氏
  • address.street

所以我们可以创建像这样的谓词

lastname ==[c] "Smith" OR lastname ==[c] "Miller" OR address.street ==[c] "3rd Avenue"

现在,如果我只想选择住在第三大街的米勒斯,我该怎么办?我希望有一个类似“ s”的按钮来在所选行(密勒)的下方创建一个子谓词,以获得以下结果:

enter image description here

  lastname ==[c] "Smith" OR (lastname ==[c] "Miller" AND address.street ==[c] "3rd Avenue")

不幸的是,每个项目(行)都只有+或-按钮。 还有其他办法吗?可以通过较少的编程工作来完成吗?

1 个答案:

答案 0 :(得分:3)

将谓词编辑器的“嵌套”设置为“复合”。在运行时:按Option键,+按钮将变为…以添加复合行。