OStack程序员社区-中国程序员成长平台

标题: ios - 使用 prepareForSegue 将捕获的图像发送到另一个 UIViewController [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 15:17
标题: ios - 使用 prepareForSegue 将捕获的图像发送到另一个 UIViewController

我正在尝试将捕获的图像发送到另一个 UIViewController

所以当我按下拍摄按钮时,它正在拍照,我可以将图像保存在我的相机胶卷中。但是当我想在另一个 View 中看到图像时,我看不到它。

这是我的代码:

- (IBAction)captureButtonid)sender
{
    [self.cameraViewController captureImageWithCompletionHander:^(id data) {
        self.image = ([data isKindOfClass:[NSData class]]) ? [UIImage imageWithData:data] : data;
        UIImageWriteToSavedPhotosAlbum(self.image, nil, nil, nil);
        [self performSegueWithIdentifier"savingSegue" sender:self];
    }];
}

这是准备转场的方法。

- (void)prepareForSegueUIStoryboardSegue *)segue senderid)sender {
    if ([segue.identifier isEqualToString"savingSegue"]) {
        PhotoSaveViewController *pvc = [[PhotoSaveViewController alloc] init];
        [pvc.imageView setImage:self.image];
    }
}



Best Answer-推荐答案


如果您的第二个 View 是 PhotoSaveViewController,则将您的 prepareForSeque 方法替换为:

- (void)prepareForSegueUIStoryboardSegue *)segue senderid)sender {
    if ([segue.identifier isEqualToString"savingSegue"]) {
        PhotoSaveViewController *pvc = (PhotoSaveViewController *)segue.destinationViewController;
        if (pvc)
            [pvc.imageView setImage:self.image];
    }
}

确实,实例化目标 UIViewController 不是你的工作,你的 UINavigationController 已经完成了。

关于ios - 使用 prepareForSegue 将捕获的图像发送到另一个 UIViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30213277/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4