In my UICollectionViewCell class I wrote this:
- (void)layoutSubviews {
[super layoutSubviews];
self.myImageView.layer.cornerRadius = CGRectGetHeight(self.myImageView.frame) / 2;
self.myImageView.layer.masksToBounds = YES;
}
But this does not work correctly in all cases, it appears like this:
Pablo Romeu
I faced a similar problem trying to get a collectionView inside a TableView Cell.
If you are changing your cell's model you should tell the cell to recalculate its layout so the cell changes its size and calls layoutIfNeeded
.
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView
cellForItemAtIndexPath:(NSIndexPath *)indexPath
UICollectionViewCell*cell = ...
// Do your stuff here to configure the cell
// Tell the cell to redraw its contentView
[cell layoutIfNeeded];
}
来源:https://stackoverflow.com/questions/33733262/how-i-can-round-uiimageview-in-uicollectionviewcell