簡體   English   中英

在ListActivity中使用包含大量行的SimpleCursorAdapter

[英]Use SimpleCursorAdapter in ListActivity with lots of rows

我正在開發我的第一個Android應用程序。 我有一個ListActivity ,它使用SimpleCursorAdapter()用自定義布局填充列表。 當行數變得非常大時,加載列表的有效方法是什么?

由於我是Android的新手,我不確定幕后會發生什么。 假設我的結果集返回500行 - ListActivity只會呈現可見區域中的那些還是會嘗試渲染所有500行?

我應該實現ListView.OnScrollListener只加載說,一次25行嗎? 有沒有某種內置的分頁機制,我還沒有偶然發現?

不要擔心數據集大小的效率,因為系統將進行必要的優化。 你可以在哪里使事情變得更加平滑是光標的加載:確保你正在使用帶有CursorLoader的 LoaderManager ,因為現在不推薦使用SimpleCursorAdapter構造函數,因為它導致在UI線程上運行游標查詢(參見本文 ) 。

我想你需要使用視圖持有者模式重用ListView行,查看本教程http://www.vogella.de/articles/AndroidListView/article.html

Android會根據需要創建並銷毀ListView中的每個View,您不必擔心它。 就像Chunhui說的那樣,ViewHolder模式也有助於提高ListView的幀率,如果它感覺遲鈍的話。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM