区别:
ListView 只能在垂直方向上进行滑动,
RecyclerView 支持垂直,水平滑动,多行多列瀑布流等形式。
ListView默认了几个adapter :ArrayAdapter,CursorAdapter和SimpleAdapter
RecyclerView:Adapter需要自己去写
ListView 有item得监听函数,AdapterView.setOnClickListener
RecyclerView:需要自己去实现接口,来实现点击,虽然麻烦但是扩展性好
ListView 并不强制使用ViewHolder,如果需要自己定义,如使用,每次就会findVieeById,性能下降,滑动卡顿,所以强烈推荐使用
Recyc erView 必须使用ViewHolder
ListView 两级缓存:缓存对象---View
1mActiveViews ---->用于屏幕内得ItemView的快速重用
2mScrapViews----->用于缓存离开屏幕的ItemView
RecyclerView 四级缓存:缓存对象ViewHolder
1mChangeScrap+mAttachedScrap----->用于屏幕内的ItemView的快速重用
2mCachedViews--->默认上限为2,即缓存屏幕外的2个ItemView
3mViewCacheExtension ---->给用户自定义,一般不使用
4RecyclerViewPool默认上限是5
网友评论