释放双眼,带上耳机,听听看~!
因为项目需求,需要做一个送礼物的界面,需求如下图,需要礼物界面数据后台获取,页数不定.可以左右滑动分页显示,每页中上排排完之后才能跳到下排进行排列 ,
第一页
第二页 .空缺的为白色collectionView背景.
面对这样的需求,首先想到是用UICollectionView来写,用UICollectionViewFlowLayout,然后设置为横向的。但是,采用这种方式来写(都是系统自带默认的布局),出来的效果就会是这样的:
cell 是上下排排列.
考虑到都使用系统自带的布局,无法解决这些问题,,查了下UICollectionViewLayoutAttributes可以改变collection view的布局..于是尝试 去重写这个UICollectionViewLayoutAttributes的方法 改变布局.下面是我的实现中的部分主要代码
// 使用自定义的LWLCollectionViewHorizontalLayout;
UICollectionViewFlowLayout *layout =[[LWLCollectionViewHorizontalLayout alloc]init];
// 根据 item 计算目标item的位置
// x 横向偏移 y 竖向偏移
- (void)targetPositionWithItem:(NSUInteger)item
resultX:(NSUInteger *)x
resultY:(NSU