2012-06-24 116 views
0

我這樣做:Android ListView - 刷新和排序?

// Member variable 
List<String> items = null; 

// in onCreate 
items = new ArrayList<String>(); 

// later on in a Task (onPostExecute) 
items.add(NewItem); 
adapter.notifyDataSetChanged(); 

我的列表是按字母順序排列。當我添加一個項目時,它只是放在最下面。任何方式把它放在適當的地方?

(是的,它會按照正確的順序你回到這個頁面的第二次,但沒有將其添加)

編輯:我第一次把它爲了通過SQL腳本調用。

+0

您使用的是內容提供商嗎?你必須動態地添加項目,還是可以將其插入到數據庫中,然後依靠內容觀察器來更新它? –

+0

我想我可以將項目添加到數據庫並將整個列表調回。但是,這似乎會浪費資源/電池/時間。所以我選擇了將項目添加到列表中,並將項目分別添加到數據庫中。似乎有更好的方法? – KickingLettuce

+0

什麼是「物品」?它是適配器的列表視圖還是源代碼? –

回答

1

我決定研究ArrayList的任何方法,但沒有找到任何方法。然而,我確實發現:

items.add(NewItem); 
Collections.sort(items); 

工作完美!我不得不將集合導入到項目中。

1

我對你的回答的建議是,當你在ListView上添加一個項目時,嘗試在添加項目時再次在列表上設置適配器。

這樣你可以在ListView上刷新數據。

+0

沒有工作。不過謝謝。如果你很好奇,我找到了答案並且發佈了它。 – KickingLettuce