notifyDataSetChanged不适合我

时间:2014-06-01 16:02:58

标签: android baseadapter notifydatasetchanged

我是Android eclipse的新手,所以我需要一些帮助。我在删除所有项目后尝试刷新ListView,这是代码:

public void OnClickButtonSletWorkoutLog(View view)
{
    WorkoutLog workoutLog = new WorkoutLog();
    try
    {
        workoutLog.GemLog(this.getApplicationContext());
        ListView workoutLogListView = (ListView) this.findViewById(R.id.listView1);
        ((BaseAdapter) workoutLogListView.getAdapter()).notifyDataSetChanged();
    }

有人可以告诉我为什么这不起作用吗?

提前致谢。

2 个答案:

答案 0 :(得分:0)

您已经创建了一个新的WorkoutLog实例,但您并未真正更新适配器本身。

在调用adapter.setWorkoutLog(workoutLog)之前,您可能遗漏了notifyDataSetChanged()(或任何实际方法)。

答案 1 :(得分:0)

您必须拥有正确删除数据的代码吗?

在完成从数据结构中删除所有项目后立即调用adapter.notifyDataSetChanged()。

我在这上写了一个blog,看看它是如何正确理解的。