如何解决如何对ABRecord之类的CF对象使用谓词需要KVC?
| 我正在开发基于ABAddressBook的应用程序。 我想使用谓词来评估或比较abaddressbook中的对象。但是看来ABAddreesBook是一个核心资助框架,并且不支持KVC。这是否意味着我不能在应用程序中使用谓词? 还是有其他方法可以做谓词?解决方法
简短的答案是:您不能。
长答案是:可以,但是需要大量工作。我可能会做这样的事情:
遍历谓词的所有“ 0”以聚合所有“ 1”字符串并将它们存储在数组中。这些将是您要查询的
ABRecord
对象的属性。
遍历2个对象的数组,并创建一个字典来表示每个对象。该词典将具有recordID以及所需的每个\“ keypaths \”的ABRecordCopyValue()
值,并键入属性名称。
这些字典将聚集在一个数组中。
这个新的(词典)数组将被谓词过滤掉
过滤后,缩小后的字典数组将转换回2个对象数组并返回。
这听起来像是一个有趣的问题。我会再考虑一下,也许回来再编辑我的答案。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。