Quando si tenta di utilizzare "ABPeoplePickerNavigationController" o "UIImagePickerController", nella maggior parte dei casi non verrà caricato correttamente. Mostrerà parte dello schermo (trasparente) che inizia nel mezzo dello schermo in iOS 7 (ipad) sia per il simulatore che per il dispositivo (schermata seguente). In iOS 8 tutto funziona correttamente.ABPeoplePickerNavigationController e UIImagePickerController non vengono visualizzati correttamente su ipad iOS7
Questo è il codice che uso per ABPeoplePickerNavigationController:
ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init];
picker.peoplePickerDelegate = self;
self.preserveCurrentEntity = YES;
[self presentViewController:picker animated:NO completion:nil];
UIImagePickerController si romperà solo per la raccolta di video, ma lavorare per tutto il resto, questo è il codice che uso:
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
switch (buttonIndex) {
case ImagePickerModeCamera:
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
break;
case ImagePickerModeAlbum:
imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
break;
default:
break;
}
imagePicker.delegate = self;
NSMutableArray *mediaType = [[NSMutableArray alloc] init];
switch (self.actionSheetType) {
case ActionSheetTypeImage:
[mediaType addObject:(NSString*)kUTTypeImage];
break;
case ActionSheetTypeVideo: {
[mediaType addObject:(NSString*)kUTTypeMovie];
[mediaType addObject:(NSString*)kUTTypeVideo];
imagePicker.allowsEditing =NO;
}
break;
default:
break;
}
imagePicker.mediaTypes = mediaType;
[self presentViewController:imagePicker animated:NO completion:nil];
Questo è cosa succede in iOS7 durante il caricamento di ABPeoplePickerNavigationController:
Questo è ciò che accade in iOS 8 durante il caricamento ABPeoplePickerNavigationController:
Qual è la soluzione per risolvere questo problema?
Il problema non è solo sul simulatore. – Zammbi
Ho codificato come te, se hai bisogno del mio codice, posso aggiornare la risposta. –