UICollectionView是從iOS6開(kāi)始引入使用的偎巢,和UITableView一樣目前應(yīng)用非常廣泛,很牛逼,但是本文不介紹其內(nèi)部實(shí)現(xiàn)原理靶庙,其重用機(jī)制比UITableView更加復(fù)雜,只介紹其基本使用叮叹,其效果圖如下所示:
UCcolletionView效果圖
相比于UITableView的不同是:
1,collecitonViewCell的注冊(cè)只能是register而tableView除了這樣注冊(cè)以外可以在cellforIndexPath數(shù)據(jù)源里面注冊(cè),并且collectionView的頭部尾部都要通過(guò)重用標(biāo)識(shí)符來(lái)進(jìn)行注冊(cè)
tableViewCell注冊(cè)
collecitonViewCell注冊(cè)
2.collectionView需要通過(guò)布局Layout來(lái)布局艾栋,而tableView不需要程序員來(lái)布局(系統(tǒng)已經(jīng)做好),這就給colelctionView的顯示變得更加靈活.
其基本實(shí)現(xiàn)代碼如下:
首先通過(guò)一個(gè)Flowlayout來(lái)布局collectionView(包括section之間間距、外部edgeInsets蛉顽、cell的itemsize大谢壤),其次注冊(cè)cell携冤、頭部悼粮、尾部(均要有reuseIdentifier):
初始化并配置collectionView
數(shù)據(jù)源方法及其代理方法:
UICollectionViewDataSource數(shù)據(jù)源方法
頭部尾部
指定間距及itemsize的代理方法UICollectionViewDelegateFlowLayout:
布局代理