Apple bietet ein schönes, umfassendes und kleines Beispiel, "QuickContacts" (developer.apple.com/library/IOs/samplecode/QuickContacts/Introduction/Intro.html), das die grundlegende Verwendung der Address Book UI Framework umreißt. - Der herunterladbare Quellcode funktioniert wie beschrieben (sobald Sie eine Person namens "Appleseed" zu Ihrem Adressbuch hinzugefügt haben oder den Personennamen in Zeile 246 (von QuickContactsViewController.m) zu etwas ändern, das bereits in Ihrem Adressbuch vorhanden ist).iOS7 - ABPersonViewController, Bearbeitungsmodus
Frage: Wie können wir die Funktion -(void)showPersonViewController
Funktion so modifizieren, dass die ABPersonViewController "picker"
ist bereits in Bearbeitung-Modus (mit einem sichtbaren „Fertig“ editingButton), wenn sie sich öffnet (nach auf die Navigation des geschoben Stapel).
In iOS-Versionen vor "7" war es eine direkte Sache, nur z. picker.editing = YES;
bevor Sie den Picker auf den nav-stack schieben, um ihn im Editiermodus zu sehen, sobald er geöffnet wird (siehe Code unten).
In iOS7 funktioniert das nicht mehr.
Ist dies ein Fehler in iOS7, wenn ja, gibt es einen einfachen Workaround (anstatt z. B. Reverse-Engineering der ABPersonViewController
Klasse)? - Oder muss es heute anders kodiert werden?
Wir freuen uns auf Ihre Kommentare.
-(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];
}
...
...
}
Dies ist ein Fehler in iOS 7. Je mehr Leute, die es die höhere Priorität fix berichten zugewiesen werden. http://bugreport.apple.com –
@ Tommie C. - Sie haben Recht, Apple bestätigt, dass es ein Fehler ist. - Vielen Dank für Ihren Kommentar. – user2831473
Das ist noch nicht behoben es scheint ?? – SAHM