在UITabBarControllers之间传递UIImage

时间:2011-11-23 10:37:26

标签: ios cocoa-touch uiview uikit uitabbarcontroller

我正在尝试将UIImageUIView中的UITabBarController1传递到UINavigationControllerUITabBarController2中的另一个UIView。在View1中我尝试了这个:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo
{

    UploadModifyViewController *view2 = [self.storyboard instantiateViewControllerWithIdentifier:@"modify"];
    UITabBarController *navBar = [self.storyboard instantiateViewControllerWithIdentifier:@"navBar"];
    view2.imageView.image = image;                //<-----
    [self dismissModalViewControllerAnimated:NO];
    [self presentModalViewController:navBar animated:YES];
}

请记住,view2位于NavigationController中,而NavigationController位于TabBarController中。外部变量不起作用,因为它们不能与UI元素一起使用。


也发布了这个问题here,但仍然没有解决方案。 在这个论坛中,我发布了一个截图,以便更好地了解我尝试传递图像的位置。

1 个答案:

答案 0 :(得分:1)

它可能不起作用,因为imageView出口在您访问它时仍然是nil。视图控制器除非必须加载视图,否则只有当它从NIB /故事板加载其视图时才会连接出口。

您应该在UIImage中声明一个单独的UploadModifyViewController属性,然后您可以在此处使用该属性来分配图像。然后,在UploadModifyViewController的{​​{1}}中,将属性的内容分配给图像视图。