当我在 iPhone 上使用 UIImagePicker
时应用程序崩溃,但仅在 iOS 7 上。
我使用以下代码行
picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = YES;
if( [UIImagePickerController isCameraDeviceAvailable:UIImagePickerControllerCameraDeviceFront] || [UIImagePickerController isCameraDeviceAvailable:UIImagePickerControllerCameraDeviceRear])
{
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
} else {
//[self showAlertViewWithTitle:@"Sorry" message:@"Your Device Don't Have Camera"];
}
[self presentViewController:picker animated:YES completion:nil];
}
该应用程序在 iOS 6 上运行,而不是在 iOS 7 上运行。 我是这个网站的新手,请帮忙。
最佳答案
UIImagePickerController
仅在 iPhone 中以 Potratin
模式呈现。我在您的代码中发现了一个错误,您正在使用 picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary
而 isCameraDeviceAvailable
是错误的:-
你应该这样编码:-
if( [UIImagePickerController isCameraDeviceAvailable:UIImagePickerControllerCameraDeviceFront] || [UIImagePickerController isCameraDeviceAvailable:UIImagePickerControllerCameraDeviceRear])
{
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentViewController:picker animated:YES completion:nil];
} else {
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentViewController:picker animated:YES completion:nil];
}
并在您的 ViewController 中将 shouldAutorotate
更改为 NO 而不是 YES
关于ios - iOS 7 中的应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19487478/