【发布时间】:2014-04-20 19:00:13
【问题描述】:
如何告诉我的UICollectionViewFlowLayout 自定义子类使用静态、固定的项目宽度值?
我希望我的委托实现自定义方法:
collectionView:layout:heightForItemAtIndexPath:
返回可变的项目高度,而宽度是固定的。宽度是根据集合视图边界和部分插图计算的:
width = collectionView.bounds.width - sectionInset.left - sectionInset.right
我创建了一个自定义的 UICollectionViewLayout 子类,但不出所料,它给了我很差的性能,所以我期待将流布局子类化。
还有不要告诉我UITableView。我知道它存在。
【问题讨论】:
-
只是猜测:由于流布局由单个单元格组成,因此您可以让这些单元格的大小控制您想要的大小。特别是,您将为此使用委托的“collectionView:layout:sizeForItemAtIndexPath:”。
-
实现
sizeForItemAtIndexPath:正是我不想想要做的事情。 -
是什么让您认为还有另一种解决方案?
sizeForItemAtIndexPath是最直接的——毕竟,单元格的大小是布局需要知道的,以便能够确定单元格的宽度。甚至文档也解释了这一点。 -
我想创建一个类似表格的布局。宽度无关紧要,委托人不应该担心它。只有高度很重要。这就是我想创建自定义布局的原因。还有什么不明白的?
标签: ios objective-c uicollectionview uicollectionviewlayout