ios - 如何以编程方式删除 iOS 中的多个通讯录联系人?

标签 ios iphone contacts addressbook

您好,我需要在表格 View 中显示所有地址簿联系人。如果用户想要选择多个联系人,请删除这些选定的联系人。为此,我没有找到任何解决方案,请帮助我。

最佳答案

你可以试试这个:
您需要#import <AddressBookUI/AddressBookUI.h> :

-(void) removeContactWithRecordsList:(CFArrayRef) selectedRecords_ {
    ABAddressBookRef addressbook = ABAddressBookCreate();
    if (selectedRecords_ != NULL)
    {
        int count = CFArrayGetCount(selectedRecords_);
        for (int i = 0; i < count; ++i)
        {
            ABRecordRef contact = CFArrayGetValueAtIndex(selectedRecords_, i);
            ABAddressBookRemoveRecord(addressbook, contact, nil);
        }
    }
    ABAddressBookSave(addressbook, nil);
    CFRelease(addressbook);
}

编辑:
示例:就我而言,我想删除所有名为“Sample”的联系人

NSString *searchName = @"Sample";
ABAddressBookRef addressbook = ABAddressBookCreate();
CFStringRef nameRef = (__bridge CFStringRef) searchName;
CFArrayRef  allSearchRecords = ABAddressBookCopyPeopleWithName(addressbook, nameRef);
[self removeContactWithRecordsList:allSearchRecords];

关于ios - 如何以编程方式删除 iOS 中的多个通讯录联系人?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28711746/

相关文章:

ios - App Store由于UIRequiredDeviceCapabilities键而拒绝了App

iphone - NSClassFromString 不区分大小写的 Objective-C

ios - Google Analytics - 如何使用 UIPageViewController 强制执行独特的屏幕 View

ios - 是否可以在IOS模拟器中模拟本地联系人以外的其他联系人

jquery - 无法序列化表单

objective-c - iOS 6 通讯录清空 kABPersonPhoneProperty

ios - UIstoryboard:Modal segues 的 Animates 选项在 6.0 之前的 iOS 版本上不可用

javascript - 检测地址栏是否在 iOS 中显示

ios - 添加屏幕截图、文本到 "SoundCloud App"

android - 从 API 8 开始获取用户/所有者个人资料联系 URI 和用户图像