我正在尝试使用自定义UICollectionViewCells实现侧滚动UICollectionView。每个自定义单元格都包含一个应该填充单元格的UIImageView。现在我正在设置像这样的UIImageView的大小,
-(UICollectionViewCell*)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
static NSString *cellID = @"cellID";
THCVCell* cell = [collectionView dequeueReusableCellWithReuseIdentifier:cellID forIndexPath:indexPath];
cell.imageView.image = [self.images objectAtIndex:(indexPath.row % [self.images count])];
cell.imageView.frame = cell.bounds;
return cell;
}
但是UIImageView在单元格出列以供重用之前不会填充单元格。
我应该更改什么才能使UIImageView在首次显示单元格时显示?
答案 0 :(得分:0)
尝试以下操作,这将使imageView在单元格调整大小时调整大小。
-(UICollectionViewCell*)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
static NSString *cellID = @"cellID";
THCVCell* cell = [collectionView dequeueReusableCellWithReuseIdentifier:cellID forIndexPath:indexPath];
cell.imageView.image = [self.images objectAtIndex:(indexPath.row % [self.images count])];
cell.imageView.frame = cell.contentView.bounds;
cell.imageView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
return cell;
}
答案 1 :(得分:0)
如果在THCVCell.m
内,您添加了类似内容:
- (void) layoutSubviews {
_imageView.frame = self.contentView.bounds;
}
这样,如果单元格改变大小,imageView将适应。
然后删除:
cell.imageView.frame = cell.bounds;