爲了學習目的,我想編寫一個Android應用程序, 將顯示一個從0到Integer.MAX_VALUE的數字列表。我目前有一個 應用程序,它將顯示0到100之間的數字,這很容易,因爲您可以只需 創建一個數字數組,然後將其傳遞給適配器,目前使用 ArrayAdapter。如果我嘗試使用非常大的數組,則程序在使用所有可用內存時會崩潰 。在Android中使用ArrayAdapter和ListView的大型數據集
看着更高級的應用程序,我注意到使用數據庫和CursorAdapter的大數據集 。如果這是正確的事情我可以 開始閱讀。我想做什麼(儘管隨時告訴我 這是錯誤的)是我的ArrayAdapter種子的長度爲100,或一些 相對較小的長度。從用戶向上或向下滾動時,我希望 修改陣列(或適配器)中的值,以隨着用戶向下滾動,刪除列表中的最小項目並將較大的 值附加到列表。如果用戶向上滾動,我想從列表末尾刪除 項目,並在開頭添加新的較小值。
正如我在這個項目中所陳述的,我迄今爲止做得很少。
package example.VariableListView;
import java.util.ArrayList;
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
public class variablelistview extends ListActivity {
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
ArrayList<Integer> intItems = new ArrayList<Integer>();
for (int ii = 0; ii < 100; ii++) {
intItems.add(ii);
}
this.setListAdapter(new ArrayAdapter<Integer>(this,
android.R.layout.simple_list_item_1, intItems));
}
}
先感謝您的任何和所有幫助。
感謝這樣的細節愚蠢和優秀的答案和例子 – user442585 2011-06-13 02:57:24