我在 UICollectionViewCell 中遇到了 UIScrollView 的奇怪行为。在我的项目中,我有一个 collectionView,每个单元格都有一个 UIScrollView,其中包含 1 个或多个图像。以下是用于此问题的一些示例代码:
- (UICollectionViewCell *)collectionView:(UICollectionView *)cv cellForItemAtIndexPath:(NSIndexPath *)indexPath {
CustomCollectionCell * cell = [cv dequeueReusableCellWithReuseIdentifier:@"CustomCell" forIndexPath:indexPath];
UIImageView * imageView = [[UIImageView alloc] initWithFrame:CGRectMake(20, 20, 150, 150)];
imageView.image = [UIImage imageNamed:@"someImage.png"];
[cell.scrollView addSubview:imageView];
return cell;
}
当然,在我的项目中,它不是相同的图像,而是来自数据库的不同图像。
添加第一个收集单元没有问题。当我添加第二个单元格时,scrollView 似乎会复制自身并将其自身的另一个实例放在顶部。我知道这听起来很奇怪,但您可以在下图中看到它的外观:
请注意左侧滚动视图中的图像是如何变暗的,我认为这是因为滚动视图被复制了。
所以,我猜测该单元格以错误的方式或其他方式重复使用。
谢谢你的帮助!