如何在 Collectionview 单元格中为 Uiimageview 设置圆角
Posted
技术标签:
【中文标题】如何在 Collectionview 单元格中为 Uiimageview 设置圆角【英文标题】:How to set rounded corner for Uiimageview in Collectionview cell 【发布时间】:2017-07-30 12:08:46 【问题描述】:我正在尝试按照以下设计制作UICollectionviewCell
我已经为单元格设置了圆角半径,但是当在collectonview
上加载数据时,imageview
没有得到圆角。我得到的输出如下
圆角被应用到单元格而不是图像。这是我正在应用的代码。代码应用于collectionView
(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell
cell.layoutIfNeeded()
cell.layer.cornerRadius = 15
cell.imageView.clipsToBounds = true
cell.layer.masksToBounds = true
谁能帮我解决这个问题。
提前谢谢....
【问题讨论】:
寻求调试帮助的问题必须包括相关代码,才能被视为关于 SO 的主题。请参阅How to create a minimal, complete and verifiable example 并在您的问题中包含相关代码。你确定你同时为UIImageView
设置了圆角半径和clipsToBounds = true
,而不仅仅是为集合视图单元格?
您找到解决方案了吗?我也遇到了同样的问题。
【参考方案1】:
你需要设置imageView layer corner
半径:-
cell.imageView.layer.cornerRadius = 15
cell.imageView.layer.masksToBounds = true
【讨论】:
我不想为 imageView 设置圆角半径。角半径仅设置为单元格。【参考方案2】:这样做:
cell.contentView.layer.cornerRadius = 2.0
cell.contentView.layer.borderWidth = 1.0
cell.contentView.layer.borderColor = UIColor.clear.cgColor
cell.contentView.layer.masksToBounds = true;
如果你想给背景添加一个漂亮的阴影:
cell.layer.shadowColor = UIColor.lightGray.cgColor
cell.layer.shadowOffset = CGSize(width:0,height: 2.0)
cell.layer.shadowRadius = 2.0
cell.layer.shadowOpacity = 1.0
cell.layer.masksToBounds = false;
cell.layer.shadowPath = UIBezierPath(roundedRect:cell.bounds, cornerRadius:cell.contentView.layer.cornerRadius).cgPath
【讨论】:
【参考方案3】:您还可以使用“用户定义的运行时属性”将角半径设置为您的图像视图 关键路径 - layer.cornerRadius 类型 - 编号 值 - 你的拐角半径值
【讨论】:
我不想为 imageView 设置圆角半径。角半径仅设置为单元格。【参考方案4】:你可以说:cell.clipsToBounds = true
【讨论】:
以上是关于如何在 Collectionview 单元格中为 Uiimageview 设置圆角的主要内容,如果未能解决你的问题,请参考以下文章
如何在 collectionView 单元格中添加可滚动视图
如何快速更新消息 CollectionView 单元格中的数据?
如何将操作按钮添加到 collectionView 的部分单元格中?
从popover返回后如何在collectionview单元格中填充文本字段