
寫(xiě)在前面
已經(jīng)有一個(gè)多月沒(méi)有更新博客了,這段時(shí)間公司雖然不太忙,但是卻沉迷進(jìn)了一款手游里面并不能自拔啊...好吧 自我檢討一下
這段不忙的時(shí)間其實(shí)挺好的,抽出了點(diǎn)時(shí)間寫(xiě)了個(gè)swift項(xiàng)目,模仿了一些有趣的動(dòng)畫(huà)效果,又模仿了一個(gè)別人寫(xiě)的開(kāi)源庫(kù),收獲頗多啊(ps.寫(xiě)了swift后感覺(jué)OC代碼好麻煩)
正好前幾天閑的無(wú)聊打算把原有的頻道管理那塊的代碼整理一下 發(fā)現(xiàn)之前的冗余代碼好多 貌似拿出來(lái)不能直接用 索性擼了個(gè)頻道管理器(類(lèi)似一點(diǎn)資訊、今日頭條頻道管理頁(yè)面) 在這里開(kāi)源共享一下 有需要就直接傳送門(mén)(我一貫作風(fēng)) 沒(méi)有需要的也可以看一下哪寫(xiě)的不好互相交流下 這個(gè)庫(kù)我打算做個(gè)短時(shí)間維護(hù) 近期可能會(huì)持續(xù)更新 好了 原諒我啰嗦一些 下面先放傳送門(mén) !
· WyhChannelManager (一款新聞?lì)恆pp頻道管理工具)
來(lái)一波gif秒懂了 具體的可能看不太清楚請(qǐng)?jiān)赿emo中詳細(xì)查看





思路
因?yàn)橹霸诠臼怯胏ollectionView做的頻道管理,collectionView本身就支持動(dòng)畫(huà)移動(dòng),只不過(guò)最后完成時(shí)出現(xiàn)了些重用錯(cuò)亂問(wèn)題,并沒(méi)有處理的很好,所以直接用自定義視圖循環(huán)創(chuàng)建了,反正頻道這東西又不多。
大體原理就是在自定義視圖上增加點(diǎn)擊、拖拽、長(zhǎng)按手勢(shì)
每一個(gè)模型對(duì)應(yīng)一個(gè)頻道視圖,當(dāng)更新位置時(shí)重新動(dòng)畫(huà)布局frame,之后所有的頻道存儲(chǔ)和頻道回調(diào)都交給manager。
此demo包含:
自定義頻道樣式
火熱頻道處理
移動(dòng)顯示占位
編輯模式
非編輯模式下的點(diǎn)擊頭部頻道回調(diào)
設(shè)置置頂不可編輯移動(dòng)頻道
感覺(jué)上基本滿足了大眾化的頻道管理功能,具體怎么應(yīng)用還是在demo中自行查看吧
最后
隨時(shí)歡迎大家吐槽 如果你有問(wèn)題隨時(shí)可以通過(guò)簡(jiǎn)書(shū)找到我
或者通過(guò) qq 609223770
最后希望我們這些熱衷于code的朋友們能多得到一點(diǎn)鼓勵(lì)多得到一些溫暖
喜歡就在GitHub上點(diǎn)個(gè)star吧