我将 UICollectionView 与包含一些 UILabel 的单元格一起使用。 UILabels 中的文本长度可以不同,可能有很多行,所以我需要根据内容调整单元格的高度。我的单元格布局是在 Storyboard 中完成的。到目前为止,我还没有找到一种方法来做到这一点,而不需要一些乏味和困难的编程布局。有没有更简单的方法来做到这一点? 我知道您可以为 UICollectionViewFlowLayout 使用委托(delegate)并实现此方法:
- (CGSize)collectionViewUICollectionView *)collectionView
layoutUICollectionViewLayout*)collectionViewLayout
sizeForItemAtIndexPathNSIndexPath *)indexPath {
//how do I get size of my cell?
return size;
}
在此方法中,您无法获取单元格的实例,因此很难返回大小。有什么想法吗?
在这种情况下,您必须使用一些字体指标来测量标签在适当宽度下的高度。您需要弄清楚相关 indexPath 的文本应该是什么,然后使用 NSString 方法
– boundingRectWithSizeptions:attributes:
确定最终布置标签时的尺寸。您可以将 CGSizeMake(250, CGFLOAT_MAX)
之类的内容传递给第一个参数以限制宽度。
关于ios - UICollectionView 与单元格包装内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21754823/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |