2013-03-11 79 views
2

我的問題是關於更新數據在SQLite Database.My更改後ListView不會更新當我插入數據到數據庫。在我的onRestart()我想做類似這個:列表視圖不插入數據時更新數據庫

onRestart(){ 
super.onRestart(); 
custom_adapter.notifyDataSetChanged(); 
} 

它給了我NullPointerException。 但取而代之的是我必須寫全碼:

onRestart(){ 
super.onRestart(); 
cursor.requery(); 
listview.setadapter(custom_adapter); 
listview.setonClickListener(new OnclickListener(){ 
...... 
} 
)}; 
} 

我定製列表視圖中包含的ImageView和TextView的兩個。

+1

您可以將選擇查詢發送到SQLiteDatabase,並將返回的記錄放入DataTable中,然後用DataTable填充Listview,每次更新數據庫中的某些內容後 – Max 2013-03-11 15:54:49

+1

謝謝..它的工作..我做了這樣的:cursor.requery(): – AndiM 2013-03-12 05:36:01

回答

0

適配器調用notifyDataSetChanged()方法那是在適配器構造收到list<Objects>檢查的變化,在SQL數據庫中,以便不斷變化的數據是不是問題的關鍵,你必須確保你在更改的數據同樣的List<Object>,你發送到適配器。在這種情況下,listView將自動刷新