【发布时间】:2017-06-29 17:31:38
【问题描述】:
【问题讨论】:
-
在我看来,您的单元格大小都相同,只是标签的大小不同。您应该发布您的单元格创建代码 - 您要为 sizeForItem 发送什么?
标签: ios uicollectionview uikit uicollectionviewlayout
【问题讨论】:
标签: ios uicollectionview uikit uicollectionviewlayout
您需要提供单元格的可变宽度。从 UICollectionViewDelegateFlowLayout
实现此方法func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
let size = (items[indexPath.item] as NSString).size(attributes: nil)
return CGSize(width: size.width + yourTextPadding, height: yourCellHeight)
}
您还可以提供标签的字体属性以进行精确计算或仅使用一些常量(如文本宽度的 2 倍)。
【讨论】: