UICollectionView didSelecteItem 委托行为异常
UICollectionView didSelecteItem Delegate behaving weirdly
我有一个 UICollectionView
来显示一些组件。
它是垂直滚动的,只有 1 列。
我正在向 collectionView
的数据源的不同部分添加 2 个相同但具有不同数据的对象。
而在我的cell
class中,我的初始化和更新方法如下
- (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"]];
}
}
但是 collectionView
这个单元格的 didSelectItemAtIndexPath
有时被调用有时不被调用,这很奇怪。
我还将 collectionView
的委托设置为当前 class,并且我也没有向单元格或 collectionView
.
添加任何 gesture recogniser
但行为仍然很奇怪而且非常随机,我什至无法调试特定场景。
如有任何帮助,我们将不胜感激。
谢谢
实际问题与 UIImageView
或 UICollectionViewCell
无关。
之前我使用 [self.collectionView reloadSections:[INDEX]]
重新加载 collectionView
的部分,这造成了一些问题,我不知道为什么。
但是,我将它们更改为 [self.collectionView reloadData]
,问题就解决了。
出现问题的原因非常奇怪,我搜索了也没有解释。
无论如何,我的问题已得到解决,因此如果将来对任何人有帮助,我会将我的解决方案作为答案发布。
谢谢
我有一个 UICollectionView
来显示一些组件。
它是垂直滚动的,只有 1 列。
我正在向 collectionView
的数据源的不同部分添加 2 个相同但具有不同数据的对象。
而在我的cell
class中,我的初始化和更新方法如下
- (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"]];
}
}
但是 collectionView
这个单元格的 didSelectItemAtIndexPath
有时被调用有时不被调用,这很奇怪。
我还将 collectionView
的委托设置为当前 class,并且我也没有向单元格或 collectionView
.
gesture recogniser
但行为仍然很奇怪而且非常随机,我什至无法调试特定场景。
如有任何帮助,我们将不胜感激。
谢谢
实际问题与 UIImageView
或 UICollectionViewCell
无关。
之前我使用 [self.collectionView reloadSections:[INDEX]]
重新加载 collectionView
的部分,这造成了一些问题,我不知道为什么。
但是,我将它们更改为 [self.collectionView reloadData]
,问题就解决了。
出现问题的原因非常奇怪,我搜索了也没有解释。
无论如何,我的问题已得到解决,因此如果将来对任何人有帮助,我会将我的解决方案作为答案发布。
谢谢