ProviderAdapter 模板化開發(fā)
一、簡介
RecyclerView為何在大廠還不夠普及盾饮?因為他們ListView封裝的足夠好采桃!
本項目注重如何性能最優(yōu)、如何敏捷開發(fā)丘损、如何功能劃分
所以普办,剛?cè)胧挚赡軙X得比常規(guī)寫adapter會多出幾個類,幾行代碼徘钥。以手淘項目為例衔蹲。
二、初衷
復(fù)雜界面adapter代碼量過大呈础,過多的類型判斷難以閱讀舆驶。
每次迭代、維護(hù)都是一個頭痛的問題而钞,改其中一處就得動整個adapter沙廉,工作量過大,并且改動風(fēng)險也大
一個界面業(yè)務(wù)功能過多笨忌,業(yè)務(wù)牽連廣泛蓝仲,如何責(zé)任劃分、協(xié)同開發(fā)官疲?
拆分View采用模板方式袱结,可以最大化的View復(fù)用。
三途凫、核心類
- 源碼都有注釋 這里不做詳細(xì)介紹
- 模板普通寫法
GuessProvider垢夹、BannerProvider
- 模板進(jìn)階寫法
此寫法無任何xml,無任何inflate操作维费,并且添加了緩存機(jī)制果元,盡可能的減小了內(nèi)存消耗
四、項目效果圖
provideradapter.gif