iOS 8 requires a new delegate method for this:
- (void)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker didSelectPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier { }
Keep the old delegation method to support iOS 7 or earlier. What I do in my application calls the iOS 7 delegate method from the iOS 8 delegate method:
- (void)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker didSelectPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier { [self peoplePickerNavigationController:peoplePicker shouldContinueAfterSelectingPerson:person property:property identifier:identifier]; }
If this delegate method is not implemented in iOS 8, clicking on the value triggers an action. When implemented, the delegate is called instead with the selected value.
rmaddy Sep 12 '14 at 16:08 2014-09-12 16:08
source share