swift 4.0 仿淘寶網(wǎng)格與列表切換效果

1//設(shè)置一個(gè)全局Bool類型的變量并賦值

?var _isGrid:Bool = true//默認(rèn)網(wǎng)格

2. 視圖采用UICollectionView展現(xiàn),具體方法不贅述

3.切換按鈕點(diǎn)擊事件響應(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代理方法實(shí)現(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文件,不展示

效果圖如下:

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容