ios - 如何从 IOS 中的地址簿中检索针对一个联系人保存的所有电话号码?

标签 ios objective-c uitableview contacts addressbook

<分区>


我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。

关闭 8 年前

我正在构建一个 iOS 应用程序,我试图在其中获取所有电话联系人并显示它们。

现在的问题是,如果有两个电话号码以一个名字保存,那么在我的列表中只显示第一个号码。

我需要检索针对一个特定联系人保存的两个号码。

最佳答案

从方法 shouldContinueAfterSelectingPerson 中,您可以获得所选 person 的引用,您可以获得不同的电话号码,例如,

multi = ABRecordCopyValue(person, kABPersonPhoneProperty);
for(i=0; i< ABMultiValueGetCount(multi);i++)
{
    NSMutableString *numb = (__bridge NSMutableString*)ABMultiValueCopyValueAtIndex(multi, i);

    //next 5 line will make numbers are clear digit, without symbols. 
    numb = [NSMutableString stringWithFormat:@"%@",[numb stringByReplacingOccurrencesOfString:@" " withString:@""]];
    numb = [NSMutableString stringWithFormat:@"%@",[numb stringByReplacingOccurrencesOfString:@"(" withString:@""]];
    numb = [NSMutableString stringWithFormat:@"%@",[numb stringByReplacingOccurrencesOfString:@")" withString:@""]];
    numb = [NSMutableString stringWithFormat:@"%@",[numb stringByReplacingOccurrencesOfString:@"-" withString:@""]];
    numb = [NSMutableString stringWithFormat:@"%@",[numb stringByReplacingOccurrencesOfString:@"." withString:@""]];

    NSString *valAtIndex = (__bridge NSString *)ABMultiValueCopyLabelAtIndex(multi,i);


    if([valAtIndex isEqualToString:@"_$!<Mobile>!$_"] || [valAtIndex isEqualToString:@"_$!<Other>!$_"])
        mobileNumber = numb;

    if ([valAtIndex isEqualToString:@"_$!<Home>!$_"])
        homeNumber = numb;

    if ([valAtIndex isEqualToString:@"_$!<Work>!$_"])
        WorkNuimber = numb;
}

关于ios - 如何从 IOS 中的地址簿中检索针对一个联系人保存的所有电话号码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29982983/

上一篇:iOS 自定义单元格 - 重用标识符

下一篇:ios - 从 identifierForVendor 计算包标识符

相关文章:

ios - 标签栏 Controller 中多个标签的一个导航 Controller

iphone - 禁用添加到 UITableView 的 UISearchbar 的滚动

arrays - 如何使用 TableView 获取数组中所选值的 Int?

ios - heightForRowAtIndexPath 无法正常工作

objective-c - NSTextView 中是否可以有 float 图像或文本框,或者我将使用什么来做到这一点?

iOS - MKMapView 使用地址而不是纬度/经度来放置注释

ios - 从模态返回时视频播放器未加载

iphone - 我们如何才能释放我们不再使用它的 View ?

objective-c - libcurl,如何在 Cocoa 中使用

ios - 如何在 Windows 8 上安装 Xcode?