CalenderCollectionViewFlowLayout *flowLayout = [[CalenderCollectionViewFlowLayout alloc] init];
flowLayout.minimumLineSpacing = 0;
flowLayout.minimumInteritemSpacing = 0;
flowLayout.itemSize = CGSizeMake(App_Frame_Width/7, App_Frame_Width/7*1.064);
// NSInteger week = _date.weekday;
float fws = 0.827;
self.collectionView = [[UICollectionView alloc] initWithFrame:CGRectMake(0, 0, App_Frame_Width, App_Frame_Width*fws) collectionViewLayout:flowLayout];
self.collectionView.backgroundColor = [UIColor whiteColor];
#import "CalenderCollectionViewFlowLayout.h"
@implementation CalenderCollectionViewFlowLayout
- (NSArray *) layoutAttributesForElementsInRect:(CGRect)rect {
NSMutableArray * answer = [[super layoutAttributesForElementsInRect:rect] mutableCopy];
/* 处理左右间距 */
for(int i = 1; i < [answer count]; ++i) {
UICollectionViewLayoutAttributes *currentLayoutAttributes = answer[i];
UICollectionViewLayoutAttributes *prevLayoutAttributes = answer[i - 1];
NSInteger maximumSpacing = 0;
NSInteger origin = CGRectGetMaxX(prevLayoutAttributes.frame);
if(origin + maximumSpacing + currentLayoutAttributes.frame.size.width < self.collectionViewContentSize.width) {
CGRect frame = currentLayoutAttributes.frame;
frame.origin.x = origin + maximumSpacing;
currentLayoutAttributes.frame = frame;
}
}
return answer;
}
@end