0

UICollectionView要展示一些组件。它的垂直滚动并且只有 1 列。

collectionView在不同部分的数据源中添加了 2 个相同但具有不同数据的对象。

在我的cell课堂上,我的初始化和更新方法如下

- (void)commonInitializer {

    self.backgroundColor = kVTColorWhite;

    self.imageView = [[VTUIKit imageSquareXL2] addToSuperview:self];
    self.imageView.f_x = kVTPadding;
    self.imageView.backgroundColor = kVTColorBackground;
    self.imageView.f_width = [VTAdSpaceDisplayCell cellSize].width - 2*kVTPadding;
    self.imageView.f_height = [VTUIKit screenWidth]/3.125;
    self.imageView.layer.cornerRadius = 2.0;
    self.imageView.layer.masksToBounds = YES;
}


- (void)updateWithModel:(id)model{

    self.model = model;

    if (self.model.image == nil) {
        [self updateEmptyCells];
    }
    else{
        [self.imageView setImageWithUrl:self.model.image optimizedForSize:[self class] cellSize] withPlaceholder:[UIImage imageNamed:@"Placeholder-Image"]];
    }
}

但是collectionViewdidSelectItemAtIndexPath有时会调用这个单元格,有时不会调用,这很奇怪。

我还将collectionView's delegate 设置为当前类,并且我也没有向gesture recogniser单元格或collectionView.

但是这种行为仍然很奇怪而且非常随机,我什至无法调试特定的场景。

任何帮助将非常感激。

谢谢

4

1 回答 1

0

实际问题与UIImageViewor无关UICollectionViewCell

早些时候我[self.collectionView reloadSections:[INDEX]]用于重新加载collectionView的部分,这造成了一些问题,我不知道为什么。

但是,我将它们更改为[self.collectionView reloadData],问题就消失了。

问题出现的非常奇怪和奇怪的原因,即使我搜索了它,我也没有任何解释。

无论如何,我的问题得到了解决,所以如果将来对任何人有帮助,我会将我的解决方案作为答案发布。

谢谢

于 2017-07-31T04:50:42.633 回答