布局管理方式:
ListView:布局自己管理 只能豎向滑動(dòng)
**RecyclerView: **布局有LayoutManager管理阱州,LinearLayoutManager(線性),GridLayoutManager(網(wǎng)格)StaggeredGridLayoutManager(瀑布流)
Adapter的使用:
ListView:有默認(rèn)的Adapter ArrayAdapter、CursorAdapter和SimpleAdaper 以及自定義Adapter
RecyclerView:需要自己實(shí)現(xiàn)Adapter
Item監(jiān)聽:
ListView:有子項(xiàng)點(diǎn)擊監(jiān)聽函數(shù)
RecyclerView:需要自行定義接口實(shí)現(xiàn)
是否強(qiáng)制使用ViewHoler:
ListView:不強(qiáng)制使用
RecyclerView: 必須使用ViewHolder
緩存機(jī)制:
ListView:二級緩存
1. mActiveViews 用于屏幕內(nèi)的ItemView緩存
2. mScrapViews用于緩存離開屏幕的ItemView
RecyclerView:四級緩存
1. mChangeScrap與mAttachScarp 用于屏幕內(nèi)的ItemView快速重用
2. mCachedViews用于緩存離開屏幕的ItemView 默認(rèn)兩個(gè)
3. mViewCacheExtension 用戶自定義
4. RecyclerViewPool 默認(rèn)上限5個(gè)
緩存對象:
ListView:緩存的View
RecyclerView:緩存的ViewHolder