第一个Listview使用notifyDataSetChanged()更新第二个ListView不会更新

时间:2012-04-05 08:26:06

标签: android listview baseadapter

我的(tabhost)Android应用程序中有两个ListView。两者都有自定义BaseAdapter。两个ListView都在请求JSON流。加载JSON流时,自定义BaseAdapter正在调用notifyDataSetChanged。

当我使用ListView选择其中一个选项卡时,List会完全加载,当我选择另一个选项卡并且其中包含其他列表时,列表不会加载。我选择选项卡的顺序无关紧要。当我选择tab1时,tab1会被加载,而tab2将无法加载列表。当我首先选择选项卡2时,将加载tab2的列表,当我选择tab1时,此列表将失败。

加载JSON流时,在自定义BaseAdapter中调用此方法:

@Override
public void jsonObjectLoaded(JSONObject a) {


        setItems((JSONArray) a.get("categories"));
        for(int c = 0; c<getItems().size(); c++)
            imgs.add(null);
    progressDialog.dismiss();
    notifyDataSetChanged();
}

getView()方法在第一个选定的选项卡上第一次调用,它不会在第二个选定的选项卡上调用。我做错了什么?

提前致谢!

0 个答案:

没有答案