奇怪... ListView只显示部分数据

时间:2015-10-29 21:20:52

标签: android android-listview android-arrayadapter

所以...我有包含ListView的Fragment。

我也有df2=df2.astype(float) 这是在片段类中定义的。在该List中,我存储数据以使用ListView显示它。

我也有private ArrayList<ComicListItem> listViewData;

我使用

中的数据填充listViewData
public class ListViewOfComicsAdapter extends ArrayAdapter<ComicListItem>

并且数据在那里,我通过调试器看到了。

我接下来要做的事情:

 @Override
 public void setUserVisibleHint(boolean isVisibleToUser)

我正在其他@Override public void onResume() { super.onResume(); ArrayList<ComicListItem> itemArrayList = new ArrayList<>(); if(listViewData != null) { for (ComicListItem cli : listViewData) itemArrayList.add(cli); } // I added this one for test, and it is the only one that is shown inside ListView itemArrayList.add(new ComicListItem(true, "aaaa", null, "eeee")); listView = (ListView)getActivity().findViewById(R.id.list_view_comics); adapter = new ListViewOfComicsAdapter(getContext(), R.id.list_view_comics, itemArrayList); // adapter.notifyDataSetChanged(); // no change, really listView.setAdapter(adapter); } 中逐个复制值。为什么?因为我在传递给ArrayList<ComicListItem>构造函数的listViewData之前遇到了同样的问题所以我只是在ListViewOfComicsAdapter这样复制了数据,并且工作了很短的时间(数据是可见的。

现在,只有可见项是我手动添加的项目(用于测试目的)。在调试器中,我在itemArrayList中看到31项,它们不是空的。

我添加到itemArrayList的所有数据都在那里但在ListView中不可见。

来自适配器的

listViewData只被调用一次。

我有getView(int position, View convertView, ViewGroup parent),显示的列表项使用它。

我很痛苦,有人请求帮助。

更新 - 适配器代码

list_view_item.xml

1 个答案:

答案 0 :(得分:0)

问题是我有2个片段,然后调用OnResume()秒,并将其写在第一个片段上。并且它们具有相同的ID,因此它始终写在第一个片段上。足以让我迷惑。