ps:這個東西是早前時段寫的,參考價值不大,扔了又覺得可惜.所以還是在次存檔.
listview優化的三種情況和方式
第一種情況:常採用viewholder
在getview的時候都會返回乙個convertview
為了避免每次
convertview = layoutinflater.from(this.mcontext).inflate(r.layout.listview_news_item, null, false);
然後再挨個findviewbyid()來為控制項賦值,這樣很浪費時間,效率不高.
於是可以用viewholder來解決問題.
當convertview為空的時候(即第一次的時候),我們執行:
convertview = layoutinflater.from(this.mcontext).inflate(r.layout.listview_news_item, null, false);
convertview.settag(holder);
當convertview不為空的時候
holder = (viewholder) convertview.gettag();
@override
public view getview(int position, view convertview, viewgroup parent) else
if (this.mlist != null)
if (holder.contenttextview != null)
if (item.getclk_url().trim().length()<1) else
return convertview;
第二種情況:
載入本地可以採用取縮率圖的方式,來避免載入大圖造成oom
第三種情況:
載入網路避免oom
我們可以自己寫乙個非同步載入的框架來實現.主要考慮的是網路請求,的在記憶體中的快取以及在sdcard中儲存.
同時我們可以採用一些第三方已經封裝好的工具來實現.
比如imageloader以及universal-image-loader
List View控制項總結
設定listview顯示項的檢視,view的列舉值之一。例如 listview1.view view.details 列舉 說明details 每個項將顯示在單獨的行與列中排列的各項有關的詳細資訊。最左側列中包含乙個小圖示和標籤,並且後續列包含由應用程式指定的子項。列會顯示乙個可以顯示的列標題的頭。...
ListView學習筆記
1.現在xml上面新增乙個listview檢視,然後加入id 2.從id中找到listview然後呼叫setadapter new myadapter 建立乙個listview,其中的介面卡實現listadapter介面 介面卡中的public view getview int position,v...
Android開發技巧 ListView
listview中的元素排序,即將資料來源排序即可 給集合排序的方法 呼叫collections的sort list,comparator 方法,該方法需要2個引數,第乙個引數就是需要排序的集合,第二個引數是比較器 這裡的比較器需要建立,並且重寫其中的compare 方法,compare 方法返回1...