2013-03-11 81 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将自动刷新