[英]Push a viewController from the UIImagePickerController camera view
我正在开发一个消息传递应用程序(类似于WhatsApp),用户可以相互发送文本和图像消息。
当用户想要发送图像时,他可以从相机胶卷中选择一个,或者他可以用相机拍摄一个。
这就是我为两种情况呈现UIImagePickerController
的方式:
- (void)handleTakePhoto
{
UIImagePickerController *ipc = [[UIImagePickerController alloc] init];
ipc.delegate = self;
ipc.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentModalViewController:ipc animated:YES];
[ipc release];
}
- (void)handleChooseFromLibrary
{
UIImagePickerController *ipc = [[UIImagePickerController alloc] init];
ipc.delegate = self;
ipc.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
NSString *desired = (NSString *)kUTTypeImage;
if ([[UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypePhotoLibrary] containsObject:desired]) {
ipc.mediaTypes = [NSArray arrayWithObject:desired];
}
[self presentModalViewController:ipc animated:YES];
[ipc release];
}
在用户选择/拍照后,我正在推送一个SendImageViewController
,它以全屏显示图像,并有一个实际发送图像的按钮。
这是我推动它的方式:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
SendImageViewController *sivc = [[SendImageViewController alloc] initWithImage:image
delegate:self];
[picker pushViewController:sivc animated:YES];
[sivc release];
}
当我从相机胶卷推送SendImageViewController
,一切都很好。 问题是,当从相机拍摄图像时,我无法推送我的SendImageViewController
,因为相机没有导航栏(我试图推动它但我的SendImageViewController
视图没有很好地呈现)
我怎么处理这个?
*我不想解雇拾取器,然后推送SendImageViewController
,我希望SendImageViewController
将被推到相机/相机胶卷的顶部,所以当我点击后退按钮时我会回到相机/相机胶卷视图。
尝试显示导航栏,如下所示:
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackTranslucent animated:YES];
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationSlide];
[picker setNavigationBarHidden:NO animated:YES];
[picker pushViewController:vc animated:YES];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.