0

我正在开发一个应用程序,我需要在其中显示联系人应用程序中的联系人。

我已经成功实现了该功能,但现在我只需要显示在本机联系人应用程序中选择的组中的联系人,类似于 Magic Jack(http://itunes.apple.com/us/app/free-calls-with-magicjack /id463926997?mt=8 ) iPhone 应用程序。

我试图在谷歌、论坛、苹果的文档上搜索,但找不到解决方案。谁能帮我?

我正在使用下面的代码来获取所有联系信息。

ABAddressBookRef addressBook = ABAddressBookCreate(); 
ABRecordRef source = ABAddressBookCopyDefaultSource(addressBook); 
NSArray *persons = (NSArray *)(ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering(addressBook, source, kABPersonSortByFirstName));
4

2 回答 2

0

ABGroupCopyArrayOfAllMembers 不适合你想要的吗?

于 2012-08-17T06:54:03.387 回答
0

这是您可以使用的代码,它获取名字和姓氏。

-(IBAction)handlingClick:(id)sender
{
    ABPeoplePickerNavigationController *peopleController = [[ABPeoplePickerNavigationController alloc] init];
    peopleController.peoplePickerDelegate = self;
    [self presentModalViewController:peopleController animated:YES];
    [peopleController release];

}

-(void)peoplePickerNavigationControllerDidCancel:(ABPeoplePickerNavigationController *)peoplePicker
{
    [peoplePicker  dismissModalViewControllerAnimated:YES];
}

-(BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker
     shouldContinueAfterSelectingPerson:(ABRecordRef)person 
                               property:(ABPropertyID)property 
                             identifier:(ABMultiValueIdentifier)identifier
{
    return NO;
}

-(BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker
     shouldContinueAfterSelectingPerson:(ABRecordRef)person
{
    self.firstName.text = (NSString*)ABRecordCopyValue(person, kABPersonFirstNameProperty);
    self.lastName.text = (NSString*)ABRecordCopyValue(person, kABPersonLastNameProperty);

    [self dismissModalViewControllerAnimated:YES];
    return NO;

}
于 2012-08-16T11:33:32.827 回答