【发布时间】:2009-08-19 10:01:17
【问题描述】:
我正在尝试在我的 iPhone 应用程序中实现实时摄像头功能,但遇到了麻烦。基本上,它的结构是这样的:我提供了一个 UINavigationController,用户可以在其中导航到带有表格视图和(在选择一个时)详细视图的图像。
然后他们可以点击一个按钮并用相机拍摄一张新照片。理想情况下,应该发生的是,在拍照或取消后,他们会返回到再次列出图像的导航根目录。为此,我在我的主要细节视图控制器中实现 UIImagePickerController 委托。
除了最后一点之外,所有这些都实现得很好 - 我可以访问照片等,但是当尝试返回第一个列表时 - 使用 popToRootViewControllerAnimated - 我收到 EXC_BAD_ACCESS 错误.这是相关代码的简化版本(didFinishPickingMediaWithInfo ... imagePickerControllerDidCancel 工作方式相同):
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
// Do some image processing stuff here...
[picker dismissModalViewControllerAnimated:YES];
[picker release];
[self.navigationController popToRootViewControllerAnimated:YES];
}
注释掉最后一行使其工作,但随后它只是返回到带有原始照片的详细视图,而不是列表。
有人吗?
更新:我之前忽略的一个细节……事实上,流行音乐似乎在一定程度上起作用。相机选择器被关闭并返回列表。但是,那是应用程序死机的时候(选定的表格单元格仍然是蓝色的,用户之前从那里点击过)。我也尝试使用 popViewControllerAnimated 来代替,结果完全相同。
【问题讨论】:
标签: objective-c iphone-sdk-3.0 uinavigationcontroller camera uiimagepickercontroller