【发布时间】:2014-07-21 08:33:10
【问题描述】:
我有一个集合视图,它有一个 UICollectionViewFlowLayout 我在里面放了10个项目。它们有不同的尺寸:
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.row<6) {
CGSize retval = CGSizeMake(100, 100);
return retval;
}
CGSize retval = CGSizeMake(200, 130);
return retval;
}
它的布局如下: 前 6 个单元格看起来不错,7-9 个是正确的,但最后一个单元格没有居中对齐,
谁能给我解释一下?
最近我在玩集合布局,但仍然对选择感到困惑 flowlayout 和自定义布局。有什么原则吗?
提前很多。
【问题讨论】:
-
UICollectionView 总是尝试填充行中的尽可能多的项目。您可以在示例中看到:在图像 1 中,每行有 3 个项目的空间,但在图像 2 中,只有一个图像的空间。现在最后一行的问题是,UICollectionView 不知道另一个项目是否会在那里,所以它对齐到一边并等待下一个元素。这是 autoLayout 的问题,视图会自动对齐,而不是与布局委托对齐。 (也许这有助于某人解决这个问题,因为它似乎仍然是开放的)
标签: uicollectionview flowlayout