Sam*_*Sam 2 ios uicollectionview uicollectionviewcell swift
嘿我正在尝试使用集合视图单元在视图控制器中显示一组"标签",但是我很难找到一种方法使它们能够根据字符串的长度动态调整大小.
现在,单个单元格是静态大小的,因此只要字符串填充单元格超过单元格大小的字符串,它就会进入第二行.我想要它,以便单元格可以根据字符串的长度更改长度.因此,如果它是标记"#Vegan",它将自动调整大小以使标记不那么大.同样,如果它是一个更长的字符串,如"#LaptopFriendly",它将水平变长以容纳字符串而不使用第二行.垂直长度可以保持固定.谢谢!
UPDATE(使用Rob的代码遇到错误时的界面构建器设置):
Rob*_*Rob 12
您需要在标签和单元格之间建立明确的约束(例如,前导,尾随,顶部和底部约束):
然后你可以使用UICollectionViewFlowLayoutAutomaticSize在itemSize你的collectionViewLayout.不要忘记设置estimatedItemSize,它可以自动调整单元格大小:
override func viewDidLoad() {
super.viewDidLoad()
let layout = collectionView?.collectionViewLayout as! UICollectionViewFlowLayout
layout.itemSize = UICollectionViewFlowLayoutAutomaticSize
layout.estimatedItemSize = CGSize(width: 100, height: 40)
}
Run Code Online (Sandbox Code Playgroud)
产量:
| 归档时间: |
|
| 查看次数: |
2345 次 |
| 最近记录: |