iOS iPad 上的 UIImagePickerController 黑屏
iOS UIImagePickerController black screen on iPad
我遇到了另一个奇怪的问题....
我允许用户拍照。为此,我正在使用 UIImagePickerController。
使用 iPhone,它可以工作,但是使用 iPad(iOS 8,我不知道其他版本),我有黑屏预览。
这是我的代码:
- (BOOL) startCameraControllerFromViewController: (UIViewController*) controller usingDelegate: (id <UIImagePickerControllerDelegate, UINavigationControllerDelegate>) delegate {
if (([UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera] == NO) || (delegate == nil) || (controller == nil))
return NO;
UIImagePickerController *cameraUI = [[UIImagePickerController alloc] init];
cameraUI.sourceType = UIImagePickerControllerSourceTypeCamera;
cameraUI.allowsEditing = NO;
cameraUI.delegate = delegate;
[self presentViewController:cameraUI animated:YES completion:NULL];
return YES;
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
NSLog(@"photo taken");
}
因此,当用户单击该按钮时,我会在视图中拍摄出现的照片。但是黑屏,点击拍照按钮什么都没有....而且没有调用didFinishPickingMediaWithInfo
(我看到了更多的主题,但我没有找到解决这个问题的方法。)
谢谢,
确保你 运行 主线程上的 UIKit 操作。还要检查您的应用是否有权使用相机 [在设备设置中]。
这也可能是个问题。(如果对某人有帮助。)
试试这个它解决了我的问题,确保有一个值
(字符串形式的应用程序名称)在您的 info.plist
> “ 捆绑包显示名称”。
在我的例子中它是空的,因此它不起作用。
如果 info.plist 中没有“Bundle display name”,则添加名为 "Bundle display name" 的行并粘贴您的应用程序名称。
我遇到了另一个奇怪的问题....
我允许用户拍照。为此,我正在使用 UIImagePickerController。
使用 iPhone,它可以工作,但是使用 iPad(iOS 8,我不知道其他版本),我有黑屏预览。
这是我的代码:
- (BOOL) startCameraControllerFromViewController: (UIViewController*) controller usingDelegate: (id <UIImagePickerControllerDelegate, UINavigationControllerDelegate>) delegate {
if (([UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera] == NO) || (delegate == nil) || (controller == nil))
return NO;
UIImagePickerController *cameraUI = [[UIImagePickerController alloc] init];
cameraUI.sourceType = UIImagePickerControllerSourceTypeCamera;
cameraUI.allowsEditing = NO;
cameraUI.delegate = delegate;
[self presentViewController:cameraUI animated:YES completion:NULL];
return YES;
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
NSLog(@"photo taken");
}
因此,当用户单击该按钮时,我会在视图中拍摄出现的照片。但是黑屏,点击拍照按钮什么都没有....而且没有调用didFinishPickingMediaWithInfo
(我看到了更多的主题,但我没有找到解决这个问题的方法。)
谢谢,
确保你 运行 主线程上的 UIKit 操作。还要检查您的应用是否有权使用相机 [在设备设置中]。
这也可能是个问题。(如果对某人有帮助。)
试试这个它解决了我的问题,确保有一个值
(字符串形式的应用程序名称)在您的 info.plist
> “ 捆绑包显示名称”。
在我的例子中它是空的,因此它不起作用。
如果 info.plist 中没有“Bundle display name”,则添加名为 "Bundle display name" 的行并粘贴您的应用程序名称。