我想从一个视图控制器(包含集合视图)传递图像到另一个视图控制器,但它不会发生。我是iOS新手Objective C。任何人都可以告诉我解决方案。 这里是我的代码...在视图控制器之间传递图像不工作呈现模式视图
- (void)collectionView:(UICollectionView *)collectionView didDeselectItemAtIndexPath:(NSIndexPath *)indexPath{
DetailedAlbumViewController *davc = [self.storyboard instantiateViewControllerWithIdentifier:@"DetailedAlbumViewController"];
AlbumPhotoCollectionViewCell *cell = (AlbumPhotoCollectionViewCell *)[collectionView cellForItemAtIndexPath:indexPath];
UIImage *image = cell.imageView.image;
[davc setImage:image];
//davc.imageView.image = image;
[self presentModalViewController:davc animated:YES];
}
在我的第二个视图控制器
...
- (void) setImage:(UIImage *) image{
UIImage *someImage = [[UIImage alloc]init];
someImage = image; // image is passing upto here.. i.e. someImage is being allocated with the image passed from first view controller..
self.imageView.image = someImage; // here it is showing nil
}
我使用调试控制台..输出..
(lldb) po someImage
<UIImage: 0x79eb8590>, {500, 347}
(lldb) po self.imageView.image
nil
为什么不' - (void)setImage:(UIImage *)image self.imageView.image = image; //这里显示为nil }'并尝试在您的viewController中声明'DetailedAlbumViewController * davc',在那里您正在展示 –
因为同样的事情正在发生..然后我想我可以为它分配一些内存。所以我确实喜欢这样.. –
对不起,再次询问...我初始化davc作为属性..它不工作.. –