ios – 如何将图像从uiimagepickercontroller传递到另一个场景的uiimageview

ios – 如何将图像从uiimagepickercontroller传递到另一个场景的uiimageview,第1张

概述如何保存UI ImagePickerController摄像头图像,以便我可以发送到CreateViewController场景的UIImageView? HomeViewController(场景1)有一个按钮,可以加载UIImagePickerController并返回来自摄像头的图像. CreateViewController(场景2)有一个空的UIImageView. HomeViewCo 如何保存UI ImagePickerController摄像头图像,以便我可以发送到CreateVIEwController场景的UIImageVIEw?

HomeVIEwController(场景1)有一个按钮,可以加载UIImagePickerController并返回来自摄像头的图像. CreateVIEwController(场景2)有一个空的UIImageVIEw.

HomeVIEwController.h

#import "CreateVIEwController.h"@interface HomeVIEwController : UIVIEwController<UIImagePickerControllerDelegate,UINavigationControllerDelegate>@property (strong,nonatomic) UIImagePickerController *imagePicker;@property(nonatomic,retain) UIImage *myImage;- (IBAction)cameraimage:(ID)sender;

HomeVIEwController.m

@implementation HomeVIEwController@synthesize imagePicker,myImage;-(voID) prepareForSegue:(UIStoryboardSegue *)segue sender:(ID)sender {if ( [segue.IDentifIEr isEqualToString:@"create"]) {    CreateVIEwController *cvc = [segue destinationVIEwController];    UIImage *image = myImage;    cvc.myImage = image;}}//Camera button action- (IBAction)cameraimage:(ID)sender{//UIImagePickerController space in memoryimagePicker = [[UIImagePickerController alloc]init];//Set the delegateimagePicker.delegate = self;//Set the sourceTypeimagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;//Show Image Picker UI[self presentVIEwController:imagePicker animated:YES completion:^{}];}-(voID) imagePickerController:(UIImagePickerController *)picker dIDFinishPickingMediawithInfo:    (NSDictionary *)info {self.myImage = [info objectForKey:UIImagePickerControllerOriginalimage];[self dismissVIEwControllerAnimated:YES completion:^{}];[self performSegueWithIDentifIEr:@"create" sender:self];}- (voID)imagePickerControllerDIDCancel:(UIImagePickerController *)picker{[self dismissVIEwControllerAnimated:YES completion:^{}];}

CreateVIEwController.h

@property (strong,nonatomic) IBOutlet UIImageVIEw *bgImage;@property(nonatomic,retain) UIImage *myImage;

CreateVIEwController.m

@implementation CreateVIEwController@synthesize bgImage,myImage;- (voID)vIEwDIDLoad{[super vIEwDIDLoad];UIImage *image = myImage;[bgImage setimage:image];}

在此下载示例代码; http://code-blind.com/ios6-camera-picture-to-another-scenes-uiimageview/

解决方法 如果以编程方式实例化控制器,则不必使用segue.

实现这一目标的最简单方法就是这样

-(voID) imagePickerController:(UIImagePickerController *)picker dIDFinishPickingMediawithInfo:(NSDictionary *)info {    [picker dismissVIEwControllerAnimated:YES completion:nil];    UIImage * pickedImage = [info objectForKey:UIImagePickerControllerOriginalimage];    displayVIEwController * controller = [displayVIEwController new];    controller.imageVIEw.image = pickedImage;    [self.navigationController pushVIEwController:controller animated:YES];}

如果你想使用segue,你需要手动调用它

[self performSegueWithIDentifIEr:@"your-segue-name" sender:self];

然后你可以在HomeVIEwController中使用一个ivar来存储pickedImage并将它传递给你的destinationVIEwController.

- (voID)prepareForSegue:(UIStoryboardSegue *)segue sender:(ID)sender {        displayVIEwController * controller = (displayVIEwController *)segue.destinationVIEwController;    controller.imageVIEw.image = _pickedImage;}

其中_pickedImage是在拾取图像后存储图像的ivar.

总结

以上是内存溢出为你收集整理的ios – 如何将图像从uiimagepickercontroller传递到另一个场景的uiimageview全部内容,希望文章能够帮你解决ios – 如何将图像从uiimagepickercontroller传递到另一个场景的uiimageview所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1064506.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存