UICollectionViewFlowLayout有两个属性来说明行和列的最小间距:
- 最小线间距
- minimumInteritemSpacing
如何设置间距相等的约束?将这两个属性设置为相同的剂量并不能解决问题,因为它们是最小值。
UICollectionViewFlowLayout有两个属性来说明行和列的最小间距:
如何设置间距相等的约束?将这两个属性设置为相同的剂量并不能解决问题,因为它们是最小值。
当然,这里的部分问题是您假设所有项目的大小相同。这使得“均匀度”的概念变得非常容易。但是流程布局并没有做出这样的假设。它的工作方式是因为它准备好布局不同大小的项目。
你说“均匀”,但你没有指定均匀的条件。如何达到这种均匀度?你必须考虑你所追求的究竟是什么。
如果您接受流布局将项目隔开以使它们在屏幕两侧完全对齐minimumInteritemSpacing
,那么显然流布局将使用比您更大的水平间距值来实现这一点。minimumLineSpace
显然,在这种情况下,如果您希望它更像流布局使用的水平间距,则需要更大的值。或者,增加sectionInset
两侧以减少整个水平间距。
如果您不接受流布局将项目隔开以使它们在两侧对齐,那么您可以精确设置水平间距,但显然项目需要左对齐(或居中),而不是完整的有道理。你可以通过继承 UICollectionViewFlowLayout 来做到这一点。