UICollectionViewFlowLayout自定义

写一个我们自己的类继承UICollectionViewFlowLayout。然后需要实现四个方法

-(CGSize)collectionViewContentSize

{

CGFloat height=  ceil([[self collectionView]  numberOfItemsInSection:0]/5)*SCREEN_WIDTH/2;

return  CGSizeMake(SCREEN_WIDTH, height);

}//返回contentsize的总大小

//自定义布局必须YES

-(BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds

{

return YES;

}

 

- (UICollectionViewLayoutAttributes *)layoutAttributesForItemAtIndexPath:(NSIndexPath *)path{}//返回每个cell的布局属性

 

-(NSArray*)layoutAttributesForElementsInRect:(CGRect)rect

{

NSArray *array = [super layoutAttributesForElementsInRect:rect];

NSMutableArray* attributes = [NSMutableArray array];

for (NSInteger i=0 ; i < [array count]; i++) {

NSIndexPath* indexPath = [NSIndexPath indexPathForItem:i inSection:0];

[attributes addObject:[self layoutAttributesForItemAtIndexPath:indexPath]];

}

return attributes;

}//返回所有cell的布局属性

 



文/Fengxinliju(简书作者)
原文链接:http://www.jianshu.com/p/b55c6040ee59
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
posted @ 2016-04-14 22:25  清浅晨曦  阅读(428)  评论(0编辑  收藏  举报