www.onevcat.com/2012/08/advanced-collection-view/
UICollectionVIew:
- cell的顯示:用UICollectionViewDelegate 的代理方法來(lái)設(shè)置,比如cell的數(shù)量,sections,和cell的內(nèi)容
- cell的布局:自定義UICollectionVIewFlowLayout
需求1:每次滑動(dòng)必須讓item停在中間。
1. 獲得中間item的centerX
2. 獲得當(dāng)前collectionView的centerX
3.利用
- (CGPoint)targetContentOffsetForProposedContentOffset:(CGPoint)proposedContentOffset withScrollingVelocity:(CGPoint)velocity
來(lái)修改collectionView最終的contentOffset
開(kāi)始思考的時(shí)候,想用scrolltmitematindexpath的方法直接滾到下一個(gè),發(fā)現(xiàn)不行。
需求2:每次手移動(dòng)一小部分也能滑動(dòng)一個(gè)item
根據(jù)手指滑動(dòng)的距離來(lái)分類:
1. 如果滑動(dòng)距離少于100: 則還是中間item不變。
2. 如果大于100,且中間的item還是原來(lái)的:則移動(dòng)到下一個(gè)item
3. 如果大于100,且移動(dòng)到后面的item為中心:則同1 保持現(xiàn)在的item為中心