相关疑难解决方法(0)

UICollectionViewFlowLayout vs子类化UICollectionViewLayout

我知道如果您正在做任何"像网格或基于行的破坏布局",那么记录的建议是使用UICollectionView Flow Layout.但是,我不确定这是否属实.

我想要一个网格,但想要一个换行符布局.物品应水平和垂直无限布局,无需堆叠.基本上,如果内容超出框架,则可以水平或垂直滚动​​的巨型棋盘.

要继承UICollectionView 布局,我必须:

  1. 覆盖prepareLayout以阻止布局包装项目.这似乎很多工作.
  2. 覆盖collectionViewContentSize.

Apple表示他们在制作UICollectionView Flow Layout 方面做了大量的努力工作,所以如果可以,我应该利用它.但是,如果我必须覆盖prepareLayout以关闭断线,我怀疑我正在丢弃他们的大部分工作.在剩下的工作中,我可能不会使用大部分工作(例如minimumLineSpacingForSectionAtIndex).

因为我想要的布局是如此简单,我怀疑我应该继承UICollectionViewLayout,因为:

  1. 我将在一个布局类中使用更简单,更清晰的实现,而不是在子类和委托之间传播.
  2. 我认为它不会比继承UICollectionView Flow Layout 更难,因为我必须prepareLayout在两种情况下都要覆盖,我怀疑这是所有艰苦工作的地方.
  3. 我会更自然地以自定义方式调整其他UICollectionViewLayoutAttributes,而不是尝试在UICollectionView Flow Layout子类之上添加另一个kludge .

我的结论是否正确?

ios uicollectionview uicollectionviewlayout

14
推荐指数
1
解决办法
7888
查看次数