Apple имеет приятный всеобъемлющий и небольшой пример «QuickContacts» (developer.apple.com/library/IOs/samplecode/QuickContacts/Introduction/Intro.html), в котором изложено основное использование Address Book UI Framework. - Загружаемый исходный код работает, как описано (после добавления в адресную книгу человека с именем «Appleseed») или смените имя человека в строке 246 (QuickContactsViewController.m) на то, что уже существует в вашей адресной книге).iOS7 - ABPersonViewController, режим редактирования
Вопрос: Как мы можем изменить функцию функции -(void)showPersonViewController
таким образом, что ABPersonViewController "picker"
уже в режиме редактирования (с видимым «Готово» editingButton), когда она открывается (после того, как натягивается на navigationController-х стек).
В версиях iOS до «7» это было прямолинейное дело, просто вставляемое, например, picker.editing = YES;
, прежде чем нажимать сборщик на навигационную стек, чтобы увидеть его в режиме редактирования, после его открытия (см. Код ниже).
В iOS7 это больше не работает.
Является ли это ошибкой в iOS7, если это так, есть ли простой рабочий процесс (а не реверсивная разработка класса ABPersonViewController
)? - Или это нужно кодировать по-другому, в наши дни?
Ждем ваших комментариев.
-(void)showPersonViewController
{
// Search for the person named "Appleseed" in the address book
NSArray *people = (NSArray *)CFBridgingRelease(ABAddressBookCopyPeopleWithName(self.addressBook, CFSTR("Appleseed")));
// Display "Appleseed" information if found in the address book
if ((people != nil) && [people count])
{
ABRecordRef person = (__bridge ABRecordRef)[people objectAtIndex:0];
ABPersonViewController *picker = [[ABPersonViewController alloc] init];
picker.personViewDelegate = self;
picker.displayedPerson = person;
// Allow users to edit the person’s information
picker.allowsEditing = YES;
picker.editing = YES; // in iOS6 this works, in iOS7 it does not
[self.navigationController pushViewController:picker animated:YES];
}
...
...
}
Это ошибка в прошивке 7. Чем больше людей, которые сообщают его с более высоким приоритетом исправление будет назначено. http://bugreport.apple.com –
@ Tommie C. - Вы правы, Apple подтвердила, что это ошибка. - Спасибо за ваш комментарий. – user2831473
Это еще не исправлено. Кажется? – SAHM