I\'m having some trouble setting up my custom header in my list.
I\'m creating a ListFragment with a custom adapter. I have the list working fine, but I\'m trying t
This is my solution for handling footer/header in list view. I use it in retained fragment. Adapter is initialized in renderView() method. This method can be called how many times you need (e.g. for refresh data in view) and footer/header works fine. I tested this code on Android 2,3,4.
@Override
public void onActivityCreated(Bundle savedInstanceState)
{
super.onActivityCreated(savedInstanceState);
...
renderView();
}
@Override
public void onDestroyView()
{
super.onDestroyView();
// free adapter
setListAdapter(null);
}
private void renderView()
{
// reference
ListView listView = getListView();
// adapter
if(getListAdapter()==null)
{
// init adapter
mAdapter = new MyAdapter(...);
}
else
{
// refill adapter
// this method assign array list object to adapter and call notifyDataSetChanged()
mAdapter.refill(...);
}
// add footer
setListAdapter(null);
if(listView.getFooterViewsCount()==0)
{
mFooterView = getActivity().getLayoutInflater().inflate(R.layout.my_footer, null);
listView.addFooterView(mFooterView);
}
// set adapter
setListAdapter(mAdapter);
}