Android ListView優化總結

2021-06-23 10:08:08 字數 792 閱讀 7969

用多了listview之流 今天小朋友問這個問題時一時還無法回答全面 特此總結。

listview多用於顯示具有相同格式之資料,包含的資料型別也極為豐富,、聲音、文字等等。。。

流程為,listview找到使用的介面卡,介面卡在逐個例項化,例項化後顯示,資料處理和adapter處理比較關鍵。

就資料來說文字倒是好說,但是、聲音在android小小手機上缺是大問題,稍有不慎變會造成你oom之類的錯誤,當然,筆者現在不會一般遇到類似問題。。。

對於的處理,一定要注意的快取和銷毀,應該盡量壓縮,一般流程為在快取中尋找,找不到的開啟多執行緒載入,

class photosloader implements runnable

@override

public void run()

}public void run()

對於獲取到的資料集中儲存,集中銷毀,執行緒儲存最好採用單例模式,以便最後銷毀。

另,對list資料採用靜態儲存都是作死的方法。。。應多檢查邏輯

2.聲音相對簡單一點,只需要處理對應的讀秒與更新,只需要注意銷毀即可。

3.listview 最好使用android提供的若干方法,除了延遲載入的方法外 切勿在adapter中進行其他資料獲取操作,否則一來導致多次執行的問題,二來使程式無法控制listview資料的顯示時間,總而言之就是不建議的寫法。。。

比較可取的辦法是:在主activity獲取資料並傳入介面卡,介面卡直接顯示資料,可以實現較好的程式的高內聚,低耦合

建議檢視谷歌原始碼關於listview部分

忘記若干事情,想起來再寫。。。

Android ListView重新整理 載入

網上有現成的框架,pulltorefresh。不過專案裡不可能全部用到,顯得有些臃腫,在此用了xlistview,大同小異。無非就是重寫了listview中的ontouch方法,新增兩個控制項兒 headerview和footerview,新增乙個介面 重新整理和載入。這樣清晰了思路,再整理 就簡單...

Android ListView 問題彙總

listview 問題彙總 1.item 中的check view 選中混亂 listview 快取機制導致的。解決方案可以是 在adapter裡的getview方法裡先呼叫holder.cbiamge.setoncheckedchangelistener方法,再呼叫holder.cbiamge.s...

Android listview的item設定高度

在item的layout檔案中,用android layout height設定item的高度。執行,高度設定無效。解決辦法 給item設定minheight,即可.最近一直糾結於listview中每個item中高度的問題,在網上只找出乙個方法,就是在每個item裡面加入,也就是imageview,...