У меня есть вопрос об ABPersonViewController. Я использую ABPeoplePickerNavigationControllerDelegate, чтобы показать сборщик людей (список контактов). Я хочу показать ABPersonViewController, когда я выбираю человека. Проблема в том, что ABPersonViewController исчезает после выбора человека. Подробно -> Я выбираю человека -> Появляется ABPersonViewController (с правильными свойствами) -> ABPersonViewController немедленно рассылается, а также полный peoplepicker. Я думаю, проблема в том, что я оттолкнул PeoplePicker.ABPersonViewController исчезает после выбора человека
Я много читал в учебниках, но я не понимаю. В настоящее время я разрабатываю для IOS 8.
Большинство учебных руководств вызывает ABPersonViewController в другом методе peoplepicker, но если я его вызову в другом методе делегата, он не работает.
Вот мой код:
@interface ViewController : UIViewController<ABPeoplePickerNavigationControllerDelegate, ABPersonViewControllerDelegate>
- (BOOL)peoplePickerNavigationController:
(ABPeoplePickerNavigationController *)peoplePicker
shouldContinueAfterSelectingPerson:(ABRecordRef)person {
ABPersonViewController *picker = [[ABPersonViewController alloc] init];
picker.personViewDelegate = self;
picker.displayedPerson = person;
picker.displayedProperties = peoplePicker.displayedProperties;
picker.allowsActions = YES;
[peoplePicker pushViewController:picker animated:YES];
return NO;
}
Спасибо заранее.
Приветствия
Почему вы показываете свой собственный 'ABPersonViewController'? «ABPeoplePickerNavigationController» автоматически отобразит ваши контактные данные, если ваш «ABPeoplePavlerNavigationControllerDelegate» будет правильно реализован. – rmaddy
Хорошо, тогда мой вопрос: как установить свойства для PersonViewController и как я могу получить выбранное свойство PersonViewController? –
Посмотрите на свойство 'displayProperties'' ABPeoplePickerNavigationController'. И реализуйте правильные методы делегирования, чтобы получать уведомления, когда свойство выбрано для определенного контакта. – rmaddy