我正在编写一个应用程序,假设从图书馆或相机中拍摄图像并用它做一些事情。我已设法加载图片:
UIImagePickerController *picker =[[UIImagePickerController alloc] init];
picker.delegate = self;
if ([@"cam" isEqual:[[sender titleLabel] text]]) {
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
} else if ([@"album" isEqual:[[sender titleLabel] text]]) {
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
}
[self presentModalViewController:picker animated:YES];
工作正常。但我想要做的是当选择一张照片时,我想要进入一个新的视角。
我有方法changeView
进入指定的视图,但当我从它调用它
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
它出于某种原因不起作用。
该程序进入segue
课程但没有任何反应。
答案 0 :(得分:0)
在使用imagepicker的“finishpicking”方法中,我会调用:
[[self presentingViewController] dismissViewControllerAnimated:NO completion:nil];
然后,在“呈现”视图控制器中,立即执行您的segue到第二个视图而不动画。这将使它看起来像imagepicker视图和第二个视图您的礼物是同一个视图控制器的一部分。这样,您也只能在任何给定点呈现单个模态视图控制器。如果您想在模态视图控制器之间传递数据,请设置图像拾取器的委托协议,将图像数据传递给呈现视图控制器,然后将其推送到
中的第二个模态视图控制器。prepareForSegue
通过设置
的属性的方法segue.destinationViewController