android recyclerview onBindViewHolder
在使用各類刷新函數來添加數據時,正常現象應該只調用顯示著的item的onBindViewHolder函數。
而我在刷新時,所有的item都會被調用onBindViewHolder函數(包括不顯示的item)
因此導致畫面的大量運算而產生卡頓。
求解這是為什麼?
ps:對recyclerview的使用應該沒有問題,就是納悶怎麼會出現這種狀況。
經過4天的折磨終於知道原因了(知道產生這種的現象的原因了,雖然還不是根本原因)
是因為我對recyclerview控件的大小進行了一些適配大小的工作(比如LinearLayout的weight屬性,google的百分比控件等),而導致這個問題。
現在使用java代碼來固定大小就可以避免這個問題。
這應該是recyclerview的底層實現產生的問題吧,沒有時間對源碼深入研究。
如果有知道的大牛,求解惑。
也謝謝,回答這個問題的朋友!