Apple dispone di un semplice e completo esempio "QuickContacts" (developer.apple.com/library/IOs/samplecode/QuickContacts/Introduction/Intro.html), che illustra l'utilizzo di base di Address Book UI Framework. - Il codice sorgente scaricabile funziona come descritto (una volta aggiunta una persona denominata "Appleseed" alla tua rubrica o modifica il nome della persona nella riga 246 (di QuickContactsViewController.m) a qualcosa che già esiste nella tua rubrica).iOS7 - ABPersonViewController, modalità di modifica
Domanda: Come possiamo modificare la Funzione -(void)showPersonViewController
in modo tale che il ABPersonViewController "picker"
è già in editing-mode (con un visibile "Done" editingButton), quando si apre (dopo essere stato spinto sul navigationController del pila).
Nelle versioni iOS precedenti a "7", si trattava di una questione diretta di inserimento, ad es. picker.editing = YES;
prima di spingere il selettore nella pila di navigazione, per vederlo in modalità di modifica, una volta aperto (vedere il codice di seguito).
In iOS7, questo non funziona più.
Si tratta di un bug in iOS7, se è così, c'è un semplice work-around (piuttosto che ad esempio il reverse engineering della classe ABPersonViewController
)? - O ha bisogno di essere codificato diversamente, al giorno d'oggi?
In attesa di un vostro commento.
-(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];
}
...
...
}
Questo è un bug in iOS 7. I più persone che riferiscono che la correzione priorità più alta saranno assegnati. http://bugreport.apple.com –
@ Tommie C. - Hai ragione, Apple ha confermato che è un bug. - Grazie per il tuo commento. – user2831473
Questo ancora non è stato risolto sembra ?? – SAHM