1
我在其中一个项目中使用了UICollectionView
,并且当我尝试在集合视图上调用reloadData
时,单元格顺序始终改变相同。
创建细胞类似的东西:UICollectionView reloadData更改单元格顺序
- (UICollectionViewCell *)collectionView:(UICollectionView *)aCollectionView
cellForItemAtIndexPath:(NSIndexPath *)aIndexPath {
PPhotoCVCell *cell =
[self._collectionView dequeueReusableCellWithReuseIdentifier:@"PPhotoCVCell"
forIndexPath:aIndexPath];
if (cell.photo == nil) {
PPhoto *photo = self._photos[aIndexPath.row];
cell.photo = photo;
}
cell.enableEditing = self._editing;
cell.layer.shouldRasterize = YES;
cell.layer.rasterizationScale = [UIScreen mainScreen].scale;
return cell;
}
如果电池是由用户选择的单元具有类UIImageView
,一个用于图像和另一个用于叠加的两个子视图。
当我处于编辑模式时,用户可以选择单元格。当选择了某些单元格并且用户退出了编辑模式时,我在覆盖的setSelected:
方法中将覆盖图像视图的alpha
值设置为0.0
。
问题是,当我在集合视图上调用reloadData
方法时,所选单元格中的叠加图像视图隐藏而没有动画,但在其他单元格中叠加图像视图显示时没有动画,并使用正确的动画消失。
当我拨打reloadData
时,我发现照片的图像视图也发生了变化。
有没有解决这个问题的方法?
您好,请指出您的代码是否正是您面临的问题。 – Javid