UICollectionView中headerView的用法,以
2017-02-21 本文已影响1189人
晓_我想去环游世界
项目中很多浏览图片,或者瀑布流的展示利用CollectionView开发还是效果比较好的,但是我之前一直困惑一个问题,就是他的头视图可不可以悬停,这里tabelView就要比它好用一些,所以很多需求我都做了假的视图让它实现悬停功能. 不过后来我发现了这个方法,应该是9以后引入的,之前没有用过,好尴尬.....
下面上代码:
首先随意创建个UICollectionView,代理啊什么的设置我就不写了,直接上图
代理实现: 代理实现:这样我们已经实现了一个简单的collectionView,下面我们加上他的header,也就是头视图.
[self.testCollection registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"HeaderView"];注册头的方法.
实现头视图的方法别忘了加上尺寸:
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section{
CGSize size={110,45};
return size;
}.
好,现在我们运行起来,发现滚动的时候这个headerView还是一起滚动的.
下面就是最重要的方法了:
layout.sectionHeadersPinToVisibleBounds = YES;
这个就大功告成,麻麻再也不用担心我的headerView啦~