我想在用户拍照或选择保存的照片后添加确认视图。确认视图将只显示选定的图像,工具栏中有一个取消和上传按钮。
我的 UIImagePickerController 是从我的一个视图控制器以模态方式呈现的,该控制器由导航控制器控制,而导航控制器又由选项卡栏控制器控制。
如何以模态方式呈现我的确认视图,以便在用户选择照片时占据全屏(如图像选择器视图)?理想情况下,我想要这样的东西:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[picker dismissModalViewControllerAnimated:YES];
UIViewController *modal = [[UIViewController alloc] init];
modal.view = confirmationView;
[self presentModalViewController:modal animated:YES];
[modal release];
}
但是,这会使应用程序崩溃。我应该从 PICKER 模态显示确认视图吗?如果是这样,我如何确保当确认视图被关闭时,选择器也不会显示?
编辑:
修复了我发布的代码中的错误。当我尝试从内存中输入而不是复制+粘贴时,就会发生这种情况:(无论如何,到目前为止的建议都没有帮助。
如果我呈现模态控制器 THEN 关闭选择器,则不会发生任何事情,大概是因为两个控制器随后都被关闭了。
如果我关闭选择器然后呈现模态控制器,我会得到一个关于模态转换的异常:
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Attempting to begin a modal transition from <UINavigationController: 0x6b33940> to <UIViewController: 0x6b62b00> while a transition is already in progress. Wait for viewDidAppear/viewDidDisappear to know the current transition has completed'