Вот набор из моего зрения:UIPopoverController и UIImagePickerController аварии
Когда UIBarButtonItem
нажата, она должна принести вверх UIImagePickerController
. Я должен сделать это, используя UIPopoverController
, который вызывается нажатием кнопки «Сброс», потому что это необходимо на iPad. Вот мой код:
-(IBAction) btnReset:(id)sender {
[self chooseImage];
}
-(void) chooseImage {
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {
imagepicker = [[UIImagePickerController alloc] init];
imagepicker.allowsEditing = NO;
imagepicker.delegate = self;
imagepicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
imagepicker.navigationBar.opaque = true;
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
popoverController = [[UIPopoverController alloc] initWithContentViewController:imagepicker];
[popoverController presentPopoverFromBarButtonItem:reset permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];
} else {
[self presentModalViewController:imagepicker animated:YES];
}
}
}
Однако, когда это называется, вид аварии с ошибкой:
'NSInvalidArgumentException', reason: '-[UIPopoverController presentPopoverFromRect:inView:permittedArrowDirections:animated:]: Popovers cannot be presented from a view which does not have a window.'
Что я делаю неправильно? Заранее спасибо.
Что такое сбрасываемая переменная, из которой вы представляете popover? –
Сброс - это имя кнопки – DGund