刷新ListView无法正常工作

时间:2012-03-07 16:45:59

标签: android listview

我有一些数据库,我用服务更新,我想在恢复时更新我的​​listView,或者不时刷新它的新数据,但它不起作用。

这是我的代码(评论中的代码不起作用,有时会导致应用程序崩溃)

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    taskLiteApplication = ((TaskLiteApplication)getApplicationContext());

    listGroupTask = taskLiteApplication.getCtrlGroupTask().getListGroupTaskToDoAndToReview(taskLiteApplication.getUser());

    Log.d(TAG, "nbtask to do an to review from DB :"+listGroupTask.size());

    if(listGroupTask.size() > 0) {

        setContentView(R.layout.to_do_layout);
        ListView lv = (ListView) findViewById(R.id.ListViewGroupTaskToDoToDo);

        //set adapter
        groupTaskToDoBaseAdapter = new GroupTaskToDoBaseAdapter(this, listGroupTask);

        lv.setAdapter(groupTaskToDoBaseAdapter);

    } else {
        TextView textView = new TextView(this);
        textView.setText("No tasks to do found!");
        setContentView(textView);
    }
}

public void onResume() {
    super.onResume();
    //listGroupTask = taskLiteApplication.getCtrlGroupTask().getListGroupTaskToDoAndToReview(taskLiteApplication.getUser());
    //groupTaskToDoBaseAdapter.notifyDataSetChanged();
    Log.d(TAG, "on resume");

}

1 个答案:

答案 0 :(得分:1)

你在这里尝试了什么:

listGroupTask = taskLiteApplication.getCtrlGroupTask().getListGroupTaskToDoAndToReview(taskLiteApplication.getUser());

您是否想为ListView提供全新的数据集?如果是这样,那么在你的适配器中实现一些方法,比如添加/删除/删除/替换等,然后再调用

groupTaskToDoBaseAdapter.notifyDataSetChanged();