所以,我正在做這個應用程序,其中有一個ListView列出了從WebService和數據庫中獲取的項目。在這個列表中,當用戶接近當前列表的末尾時,我需要拉動刷新並加載更多itens。當接近結束時,拉動刷新和加載更加有效。但是,問題是添加項目時,無需將項目添加到列表的頂部或末尾,它只是刷新整個列表,加載新項目並排除舊項目。那麼,我怎樣才能將一個項目添加到一個ListView的頂部或頂部?將項添加到ListView的末尾
這裏是一些代碼,以幫助:
@Override
protected void onPostExecute(Boolean result) {
Log.d("Async 4", "post");
SampleAdapter adapter = new SampleAdapter(getActivity());
if (dialog.isShowing()) {
dialog.dismiss();
}
for (int i = 0; i < 1; i++) {
for (int w = 0; w < 1; w++) {
for (int j = 0; j < 1; j++) {
int cont = 10;
cont++;
for (int k = 0; k < cont; k++) {
adapter.add(new SampleItem("" + title[k],"" + categoria_[i],"" + data_publicao[i], 1));
// Log.d("", "" + title[k]);
setListAdapter(adapter);
}
}
}
}
if (dialog.isShowing()) {
dialog.dismiss();
}
pullToRefreshListView.onRefreshComplete();
}
}
這段代碼是我嘗試添加新的項目。我只是調用加載數據的異步任務(來自WebService /數據庫),onPostExecute用於添加更新的項目。
如果需要更多來自我的項目的代碼,只需要問一下,我會放更多。提前致謝。
把它看成兩件獨立的事情:項目列表和連接到ListView的適配器。您在新數據到達時更新項目列表,然後使用新編輯的列表更新適配器。您使用的適配器似乎已將數據打包在其中。在這種情況下,你會失去對列表的一些控制,比如列表中add()放置新項目的位置。 – 2013-05-06 14:38:05