【问题标题】:Get a Contact Picture ios获取联系人图片 ios
【发布时间】:2013-01-10 13:43:38
【问题描述】:

我正在尝试弄清楚如何在下面的代码中添加人 last namefirst name,以便从我的手机中获取他们的联系人图片:

if(ABPersonHasImageData(aABRecordRef))
{
   UIImage *image = [UIImage imageWithData:(NSData *)ABPersonCopyImageData(aABRecordRef)];
   cell.imageView.image = image;
} else {
   UIImage *image1=[UIImage imageNamed:@"User.jpg"];
   cell.imageView.image=image1;
}

我也可能在此处缺少代码,因此请务必填写需要的区域。我只是不知道如何将 first,last 名称添加到上面的代码中,以便我知道何时联系到该联系人为其提取图像。

任何帮助都会很棒!谢谢!

【问题讨论】:

    标签: iphone ios ios5 ios6


    【解决方案1】:

    要获取 FirstName 和 LastName ,您可以使用:

    NSString *firstName = (NSString *)ABRecordCopyValue(aABRecordRef, kABPersonFirstNameProperty);
    NSString *lastName = (NSString *)ABRecordCopyValue(aABRecordRef, kABPersonLastNameProperty);
    

    这里显示如何Search By Number and Get the image using ABAddressBook

    但您想按名字和姓氏进行搜索。所以根据 Documentation ,你应该使用 -recordsMatchingSearchElement: 方法来处理多个参数。

    获得匹配的数据后,您可以使用以下代码提取图像:

    CFDataRef imageData = ABPersonCopyImageData(aABRecordRef);
    UIImage *image = [UIImage imageWithData:(NSData *)imageData];
    CFRelease(imageData);
    

    希望你能从中得到一些有用的东西。

    【讨论】:

    • 不客气……StealthRT !!甚至我也从这项研究中得到了一些东西。
    • @Bhavin 我可以从联系人那里获取本地图片网址吗...请告诉是否可以
    【解决方案2】:

    试试:

    CFStringRef firstName, lastName; // can cast this to NSString *
    
    firstName = ABRecordCopyValue(aABRecordRef, kABPersonFirstNameProperty);
    lastName = ABRecordCopyValue(aABRecordRef, kABPersonLastNameProperty);  
    

    【讨论】:

    • 感谢您的回复。但是,我如何告诉它要寻找什么?我会做 if (firstName == "the first name here") {} 吗?
    • 永远不要像那样比较字符串。使用 -isEqualToString
    猜你喜欢
    • 1970-01-01
    • 2021-02-07
    • 1970-01-01
    • 1970-01-01
    • 2017-10-01
    • 2014-01-19
    • 1970-01-01
    • 2014-01-14
    相关资源
    最近更新 更多