UICollectionViewLayoutAttributes

UICollectionViewLayoutAttributes

我想创建一个自定义UICollectionViewFlowLayout来更改标题和单元格在集合视图上显示的方式。
我将UICollectionViewFlowLayout子类化,并覆盖了layoutAttributesForElementsInRect方法,在该方法中创建了自定义定位的UICollectionViewLayoutAttributes对象。
事实是我没有使用[super layoutAttributesForElementsInRect:(CGRect)rect]生成UICollectionViewLayoutAttributes,因此我的屏幕空白。
如果我使用[super layoutAttributesForElementsInRect:(CGRect)rect]方法获取UICollectionViewLayoutAttributes,则会以默认方式显示集合视图。

我正在使用以下代码创建UICollectionViewLayoutAttributes:

UICollectionViewLayoutAttributes *cell = [UICollectionViewLayoutAttributes
                    layoutAttributesForCellWithIndexPath:[NSIndexPath indexPathForRow:item inSection:section]];
[cell setAlpha:self.cellOpacity];
[cell setHidden:NO];
[cell setSize:self.itemSize];
[cell setZIndex:self.cellZIndex];
[cell setFrame:CGRectMake ((self.itemSize.width * item) + self.cellPadding,
                    (section * self.itemSize.height) + self.cellPadding,
                    self.itemSize.width,
                    self.itemSize.height)];

[itemsLayoutAttributes addObject:cell];

我是手动创建UICollectionViewLayoutAttributes而不使用super方法创建的ojit,这有问题吗?
您认为我做错了什么?

先感谢您!

最佳答案

实际上,看来我唯一做错的是我不够谨慎,无法看到不透明度设置为 0 :(。

看来我的布局现在看起来还不错,的确可以覆盖layoutAttributesForElementsInRect方法来创建并且不仅可以编辑该流布局的UICollectionViewLayoutAttributes

10-08 01:03