Ios ABPeoplePickerNavigationController委托不工作

Ios ABPeoplePickerNavigationController委托不工作,ios,delegates,abpeoplepickerview,Ios,Delegates,Abpeoplepickerview,我的目标是允许用户从联系人中导入联系人详细信息(电话、姓名和电子邮件)。当我设置ABPeoplePickerNavigationController并将委托设置为self时,不会调用委托方法。此时将显示人员选取器视图,以下是我的代码: -(IBAction)importFromContacts:(id)sender { ABPeoplePickerNavigationController *newNavController = [[ABPeoplePickerNavigationCon

我的目标是允许用户从联系人中导入联系人详细信息(电话、姓名和电子邮件)。当我设置ABPeoplePickerNavigationController并将委托设置为self时,不会调用委托方法。此时将显示人员选取器视图,以下是我的代码:

-(IBAction)importFromContacts:(id)sender
{

    ABPeoplePickerNavigationController *newNavController = [[ABPeoplePickerNavigationController alloc] init];
    newNavController.delegate = self;
    [self presentViewController:newNavController animated:YES completion:nil];

}

-(void)peoplePickerNavigationControllerDidCancel:(ABPeoplePickerNavigationController *)peoplePicker
{
    NSLog(@"cancel");
    [self dismissViewControllerAnimated:YES completion:nil];
}

我错过了什么?我还想补充一点,类ABPeoplePicker似乎不再是UIAddressBook框架的一部分。它也不在文档中

您正在设置
委托
,该委托描述了应处理UINavigationController委托方法的对象

改变

newNavController.delegate = self;


(如中所述,ABPeoplePickerNavigationController是UINavigationController的一个子类。一个对象有多个委托,即使在同一个类中,也不例外。)

您正在设置
delegate
,它描述了应该处理UINavigationController委托方法的对象

改变

newNavController.delegate = self;

(如中所述,ABPeoplePickerNavigationController是UINavigationController的一个子类。一个对象有多个委托,即使在同一个类中,也不例外。)

使用此委托 -(无效)peoplePickerNavigationController:(ABPeoplePickerNavigationController*)peoplePicker没有选择person:(ABRecordRef)person

使用此选项
-(无效)peoplePickerNavigationController:(ABPeoplePickerNavigationController*)peoplePicker没有选择person:(ABRecordRef)person

没问题……只是不要让它再次发生;)没问题……只是不要让它再次发生;)