UICollectionView layout of last cell

ⅰ亾dé卋堺 提交于 2019-12-06 20:16:23

问题


I have a collectionview which has a UICollectionViewFlowLayout I put 10 items in it. and they have different sizes:

- (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;
}

it layouts like: first 6 cells look good, and 7-9 are correct, but the last one is not center aligned,

any one could explain this to me?

and resent days Im playing with collection layouts, but still feel confused abt the selection of flowlayout and custom layout . any principles on this?

many thx in advance.


回答1:


I came across a similar issue with the last few cells in the collection view having an unsightly offset. In my case it was a result of not honoring the section insets with respect to the item sizes.

Try setting the sectionInset of the flowLayout to 0:

flowLayout.sectionInset = UIEdgeInsetsZero;

If this doesn't work you might need to enforce a minimumInterItemSpacing as the flow layout seems to bugger this up on the last few cells:

flowLayout.minimumInteritemSpacing = 10.f;//or any reasonable number


来源:https://stackoverflow.com/questions/24860754/uicollectionview-layout-of-last-cell

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!