在 UICollectionViewCell 中获取图像
Posted
技术标签:
【中文标题】在 UICollectionViewCell 中获取图像【英文标题】:Getting image inside UICollectionViewCell 【发布时间】:2015-09-02 07:58:40 【问题描述】:我有一个收藏视图。此集合视图的每个单元格都有一个标有标签 100 的 UIIMageView。
在某一时刻,会显示单元格。用户选择一个单元格。我想在该单元格的 imageView 中复制该图像。
这是代码:
UICollectionViewCell *touchedCell = [self.collectionView dequeueReusableCellWithReuseIdentifier:reuseIdentifier forIndexPath:indexPath];
UIImageView *imageView = (UIImageView *)[touchedCell viewWithTag:100];
UIImage *image = imageView.image;
问题在于,此时 image 为 nil。 touchedCell
和 imageView
不为零。
为什么会这样以及如何获得该图像?
【问题讨论】:
用户触摸单元格后你的意思是什么,您对上述代码的实现似乎是cellForItemAtIndexPath
我认为他不会与 dequeueReusableCellWithReuseIdentifier 一起使用。您在哪里调用此代码?
图片是否显示在您的收藏视图中?
【参考方案1】:
按照这些-- 首先创建一个实例变量
@implementation MyClass
UIImage *newImage
然后 实现collectionview的这个委托方法
-(void)collectionView:(UICollectionView *)collectionView
didDeselectItemAtIndexPath:(NSIndexPath *)indexPath
CustomCollectionViewCell *datasetCell =
(CustomCollectionViewCell *)[collectionView cellForItemAtIndexPath:indexPath];
newImage = [UIImage imageWithCGImage:cell.customImageVIew.oldImage.CGImage];
因此,您的实例变量 newImage 将包含您选择的单元格中图像的副本。 希望这会有所帮助
【讨论】:
以上是关于在 UICollectionViewCell 中获取图像的主要内容,如果未能解决你的问题,请参考以下文章
在 UICollectionViewCell 中更新 UITableView
如何在 UICollectionViewCell 中添加 UICollectionView?
如何在 UICollectionViewCell 上设置 UILabel?