【发布时间】:2010-11-20 03:30:14
【问题描述】:
我是 iPhone 开发的新手。我正在开发一个涉及两个视图的应用程序。我在视图中有一个相机按钮,它打开了默认的 iPhone 相机。这是通过在 ViewOneController 中的 IBAction for camera 按钮中添加此代码来实现的:
UIImagePickerController *picker =
[[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = NO;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentModalViewController:picker animated:YES];
[picker release];
第一个视图的视图控制器也是相机的 UIImagePickerControllerDelegate。当点击图片并且相机视图返回到函数 imagePickerController:didFinishPickingWithMediaInfo 时,我执行此操作:
(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[picker dismissModalViewControllerAnimated:YES];
[self presentModalViewController:ViewTwoViewController animated:YES];
}
所以基本上我想要实现的只是从viewone单击“拍照”--->打开相机->相机完成后跳转到查看两个。与 flickr 应用程序中的内容非常相似。但是,在我从相机拍摄照片后,我的应用程序返回查看一并且未显示查看二。我在这里错过了什么?
另外,从概念的角度来看,我猜 IOS 会为任何应用程序保留一堆视图。当 presentModalViewController 被调用时,视图被显示并且它被添加到堆栈中并且当dismissModalViewController被调用时,视图被从堆栈中移除并且父视图被显示。对吗?
谢谢。
【问题讨论】:
标签: iphone cocoa-touch ios4