1. 程式人生 > >android ListView學習參考的BLOG

android ListView學習參考的BLOG

關於ListView的效率提升的方式,參考第一行程式碼:
1、判斷getView傳入的convertView是否為null,如果不為null則直接使用convertView例項。
convertView是當listView中子項被移除螢幕外時,系統通過列表快取該子項佈局的檢視例項,當需要顯示新的子項時,會傳給它介面卡的getView()方法,就可以直接使用該檢視例項,而不再通過LayoutInflater.inflate()來載入xml檔案的方式返回檢視例項、繪製檢視。
2、通過ViewHolder物件來持有子項佈局下所有子控制元件的物件,並且利用convertView的setTag()方法來儲存ViewHolder例項,這樣通過convertView傳遞給下一個子項,下一個子項可以通過convertView例項的getTag()來直接獲取ViewHolder(同時也是convertView對應的子項控制元件例項),這樣就不需要convertView用findViewById()來獲取子控制元件例項(findViewById()影響效率),最後對子控制元件物件設定屬性。