所以...我有包含ListView的Fragment。
我也有df2=df2.astype(float)
这是在片段类中定义的。在该List中,我存储数据以使用ListView显示它。
我也有private ArrayList<ComicListItem> listViewData;
。
我使用
中的数据填充listViewDatapublic 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
答案 0 :(得分:0)
问题是我有2个片段,然后调用OnResume()
秒,并将其写在第一个片段上。并且它们具有相同的ID,因此它始终写在第一个片段上。足以让我迷惑。