我知道你可以调用notifyDataSetChanged();在这种情况下你会怎么做 - 这甚至有可能吗?如何在Android中刷新ListView
ListView listView = getListView();
listView.setTextFilterEnabled(true);
setListAdapter(new ArrayAdapter<String>(Items.this, R.layout.list, items));
编辑:我已更改为以下建议之一。这是我在做什么:
protected void onPostExecute(Void v) {
adapter = new ArrayAdapter<String>(Items.this, R.layout.list, items);
setListAdapter(adapter);
adapter.notifyDataSetChanged();
}
这里我刷新一个AsyncTask方法。这是在ListLiew顶部的一个带有Submit按钮的对话框中调用的。对话框将新数据插入到数据库中,我希望列表刷新到哪里来反映这一点。我已经尝试了上面的代码,并且在对话框中的按钮的onClick内部。在对话被解除之前。
您是否使用新插入的元素更新了您的物品列表,然后尝试通知适配器? – Amal
是的,我打电话给HttpPost,运行脚本通过PHP将数据插入数据库。然后回到Java中,我试图在完成后刷新listview。 – KickingLettuce