1//設(shè)置一個全局Bool類型的變量并賦值
?var _isGrid:Bool = true//默認網(wǎng)格
2. 視圖采用UICollectionView展現(xiàn),具體方法不贅述
3.切換按鈕點擊事件響應(yīng)
?//MARK:切換列表或者網(wǎng)格
?func switchListOrCollection() {
//更改itemsize的寬和高,并更改全局變量的值
? ? ? ? if _isGrid == true{
? ? ? ? ? ? _isGrid = false
? ? ? ? ? ? layout.itemSize=CGSize(width:self.view.frame.size.width - 27, height:160)
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? letwidth = (kScreenWidth-34)/2.0
? ? ? ? ? ? _isGrid=true
? ? ? ? ? ? layout.itemSize=CGSize(width: width, height:263)
? ? ? ? }
//刷新collectionView
? ? ? ? collectionView.reloadData()
? ? }
4.UICollectionViewDataSource代理方法實現(xiàn)
func collectionView(_collectionView:UICollectionView, cellForItemAt indexPath:IndexPath) ->UICollectionViewCell{
? ? ? ? if _isGrid == true {
? ? ? ? ? ? let cell =? collectionView.dequeueReusableCell(withReuseIdentifier:String(NSStringFromClass(ZKHomeCollectionViewCell.self)), for: indexPath) as! ZKHomeCollectionViewCell
? ? ? ? ? ? return cell
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? let cell =? collectionView.dequeueReusableCell(withReuseIdentifier:String(NSStringFromClass(ZKHomeListCell.self)), for: indexPath) as! ZKHomeListCell
? ? ? ? ? ? returncell
? ? ? ? }
? ? }
注意:ZKHomeCollectionViewCell與ZKHomeListCell 系本人封裝的cell.swift文件,不展示
效果圖如下: