我正在尝试将UIImage
从UIView
中的UITabBarController1
传递到UINavigationController
中UITabBarController2
中的另一个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,但仍然没有解决方案。 在这个论坛中,我发布了一个截图,以便更好地了解我尝试传递图像的位置。
答案 0 :(得分:1)
它可能不起作用,因为imageView
出口在您访问它时仍然是nil
。视图控制器除非必须加载视图,否则只有当它从NIB /故事板加载其视图时才会连接出口。
您应该在UIImage
中声明一个单独的UploadModifyViewController
属性,然后您可以在此处使用该属性来分配图像。然后,在UploadModifyViewController
的{{1}}中,将属性的内容分配给图像视图。