優化複雜listview的一些思考

有些時候listview需要做的很複雜,比如微信朋友圈,一次加載固定的list項,加載之後的數據必須保存,否則每次都重新取數據會讓用戶流量不知不覺溜走,這對於一個優秀的app來說幾乎是不可容忍的,網上流傳比較廣的listview優化方法,ViewHolder和convertView就不太適用了,因爲每次複用view數據和圖片都要進行重新加載,一是降低了用戶體驗,二是對於流量的控制是一個挑戰。(如果加載的數據不是存在本地的,每一次複用View都要從服務器獲取),

我當前的想法是,一個是放棄view的複用,加載出來的listview的行就保留,(上下滑動行時,不使用不可見的view進行復用)同時刷新之後,新的行數據先加載文字信息,後抓取圖片加載,同時加載的圖片和文字可以本地保存。


經過自己的多次嘗試,終於在eoe社區看了一位仁兄寫的代碼後,找到了答案。

下面給他鏈接:http://code.eoe.cn/405 

在adapt中設置一個map用於存取view的信息,之後每次getview都從map中取,這樣就可以實現了listview的流暢滑動,而且只會產生一次流量。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章