Rab*_*bih 6 iphone sdk objective-c addressbook ios
我想在iPhone地址簿中搜索特定的电话号码,然后检索联系人姓名.我正在循环遍历所有联系人并提取多值属性并与值进行比较.这花费了太多时间.我已阅读Apple地址簿指南,他们说:
"完成其他类型的搜索,使用函数ABAddressBookCopyArrayOfAllPeople,然后使用NSArray方法过滤结果filterArrayUsingPredicate:".
谁能给我一个如何做到这一点的例子?
谢谢.
如果你想在带有电话号码的联系人中搜索,我会告诉你一个建议.
1.获取所有联系人
NSArray *thePeoples = (NSArray*)ABAddressBookCopyArrayOfAllPeople(addressBook);
Run Code Online (Sandbox Code Playgroud)
2.从contacts数组(thePeoples)创建另一个数组(记录),
记录:[record1,record2,.... recordN]
记录:{name:"myContactName",phoneNumber:"1234567890"}
3.使用谓词搜索mutableArray(记录).
NSPredicate * myPredicate = [NSPredicate predicateWithFormat:@"record.phoneNumber contains %@",string];
NSArray * filteredArray = [records filteredArrayUsingPredicate:myPredicate];
Run Code Online (Sandbox Code Playgroud)
这只是解决方案的一个简单示例,请记住phoneNumber是一个multiValue字段.因此,我们将在模型类变量中包含一个数组作为电话号码.
| 归档时间: |
|
| 查看次数: |
13170 次 |
| 最近记录: |