我用两个不同的应用程序尝试了两次,我得到同样的东西.我有一个设置UIImagePIckerController实例,如下所示:
- (IBAction)addImage:(UIBarButtonItem *)sender {
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
NSArray *mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];
if ([mediaTypes containsObject:(NSString *)kUTTypeImage]) {
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
picker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeImage];
picker.allowsEditing = NO;
picker.showsCameraControls = NO;
[self presentViewController: picker animated:YES completion:NULL];
}
[..]
}
Run Code Online (Sandbox Code Playgroud)
这是第二次.在第一次我设置了自定义叠加来运行快门和其他功能.一切运行正常,但我一直在控制台上出错:
<Error>: CGAffineTransformInvert: singular matrix.
Run Code Online (Sandbox Code Playgroud)
当我运行应用程序时,每次我在相机启动时旋转(或移动哪些信号旋转)设备{something happens here}.我在我的iPhone 4和iPad Mini上尝试了相同的结果.经过大量的挖掘,我发现这只发生在这种情况下
picker.showsCameraControls = NO;
Run Code Online (Sandbox Code Playgroud)
如果我放
picker.showsCameraControls = YES;
Run Code Online (Sandbox Code Playgroud)
然后我没有收到任何消息(虽然我的自定义叠加层也被隐藏了).确保它不是自定义覆盖本身我尝试将其保留,并仍然提供错误消息.
有人对我应该怎么做才有任何想法?