【发布时间】:2010-09-26 21:21:26
【问题描述】:
我想在用户拍照或选择保存的照片后添加确认视图。确认视图将只显示选定的图像,工具栏中有一个取消和上传按钮。
我的 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 关闭选择器,则不会发生任何事情,可能是因为两个控制器随后都被关闭了。
如果我关闭选择器 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'
【问题讨论】:
标签: iphone uiimagepickercontroller modalviewcontroller