gpt4 book ai didi

ios - segue 后无法从 UIImagePickerController 加载图像到下一个 ViewController

转载 作者:行者123 更新时间:2023-11-29 13:17:34 27 4
gpt4 key购买 nike

我正在尝试在下一个 View Controller 上加载在 UIImagePickerController 上选择的图片。我在类似的线程上进行了一些搜索,发现了一些可以帮助我进行设置的线程,但是图像并没有真正“传输”到下一个 View Controller 。

这是我的 didFinishPickingImage 和 prepareForSegue 代码:

- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingImage:(UIImage *)image
editingInfo:(NSDictionary *)editingInfo
{
self.imageChosen = image;
[picker dismissModalViewControllerAnimated:NO];
[self performSegueWithIdentifier:@"Edit" sender:self];
}

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"Edit"]){
EditViewController *editViewController =
(EditViewController *)segue.destinationViewController;
editViewController.imageView.image = self.imageChosen;
}

我正在让 segue 运行到 EditViewController,但是那里的 imageView 没有加载图片。我猜作业不知何故是错误的,但我看不出是怎么回事。

最佳答案

当您尝试将图像设置为 EditViewController UIImageView 时,它不存在,因为 EditViewController 尚未加载。不是将图像设置为 UIImageView,而是直接在 EditViewController 中创建一个实例变量来保存图像。然后将此图像分配给 viewDidLoad:

中的 UIImageView
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{
if ([segue.identifier isEqualToString:@"Edit"]){
EditViewController *editViewController =
(EditViewController *)segue.destinationViewController;
editViewController.image = self.imageChosen;
}

//EditViewController.h
...
@property (nonatomic, strong) UIImage *image;
...

//EditViewController.m
- (void)viewDidLoad {
...
self.imageView.image = self.image;
...
}

关于ios - segue 后无法从 UIImagePickerController 加载图像到下一个 ViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15310769/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com