2011-06-30 32 views
0

所以基本上我的數據庫工作了一段時間(雖然非常糟糕,不得不基本上重新啓動我的應用程序以查看列表視圖中的更改)。Android數據庫沒有更新或刪除

這是一個問題的兩個部分:

我用一個自定義適配器和使用

ea.notifyDataSetChanged(); 

,試圖更新我的適配器。但我認爲問題在於陣列不會更新。

List<String> rList = db.selectAllReceive(); 
    receiveMessages = rList.toArray(new String[rList.size()]); 

如果我只是更新適配器內部的陣列?

第二部分:

db.delete(clicked); 
     Toast.makeText(getBaseContext(), "Deleted Row: " + clicked, Toast.LENGTH_SHORT); 
     Log.i("ContextMenu", "[MainAct.Class] Clicked DELETE"); 
     ea.notifyDataSetChanged(); 

這是我的代碼,我onContextItemSelected()內。我得到我的日誌,但我沒有得到吐司或注意到任何數據庫刪除。

也許這一切都歸結爲數組未被足夠更新的事實?我應該創建一個方法來更新數組並在它之後使用它?

感謝

回答

0

沒有全班/班,很難肯定地說,但我會假設一個線程問題。 Toast消息沒有顯示出來(我認爲),我會檢查你是否正確地進行線程處理數據庫更新和列表視圖更新。

+0

我根本不穿線。也許這就是爲什麼 – Brandon

+0

哇。吐司沒有.show()...但感謝線程的想法,最有用的兩個答案... – Brandon

0

使用mListView.setAdapter(適配器)可以解決所有的問題,也許有一點效率問題,但是如果數據量不大,那麼它就是熊。

+0

這就是我在做什麼 – Brandon