UICollectionViewCell呈圆形

时间:2014-01-04 07:16:53

标签: ios objective-c uiview uicollectionview uicollectionviewcell

是否可以创建圆形的自定义UICollectionViewCell?

为什么我需要这个?
我正在尝试创建自定义颜色选择器。我想在每个CollectionViewCell中添加一些默认颜色。这些颜色是动态的。这意味着我将改变填充细胞的颜色。

我尝试了什么
我在细胞中保持了圆形的png图像。但如果我想改变颜色,将不得不改变图像 我把圆形图像保持透明(在圆形区域内)。然后我改变了细胞的背景颜色。因为我将改变collectionView的背景图像而失败 除了边界外,我保持圆形图像完全透明。然后我改变了细胞的背景颜色。失败...
救救我..

2 个答案:

答案 0 :(得分:7)

不要使用圆形图像。您可以通过将图层的cornerRadius属性调整为边缘的一半来制作任何方形视图圆形。因此,如果您的单元格为100x100,则将其圆角半径设置为50.

您可以在集合视图数据源(cellForItem...)或单元子类的applyLayoutAttributes:方法中执行此操作。

为了获得更大的灵活性,请使用添加到单元格背景视图的CAShapeLayer并更改其填充颜色。这样,彩色区域可以是您喜欢的任何形状,您可以为其添加阴影效果和动画。

答案 1 :(得分:0)

这对我有用 如果你需要单元格在圆圈中删除thumbimageviewcell它使用的标签并添加你的图像视图名称

    cell.thumbimageviewcell.layer.cornerRadius = cell.thumbimageviewcell.frame.size.width/2;
    cell.thumbimageviewcell.layer.borderWidth = 2.0f;
    cell.thumbimageviewcell.layer.borderColor = [UIColor whiteColor].CGColor;
    cell.thumbimageviewcell.layer.masksToBounds = YES;