I'm sorry if my question seems common. I have google and have many results, but none of them I can apply.
I have a fragment that uses GridView layout
. I also use BaseAdapter
for my gridview.
When the data changes, I call gridView.invalidateViews();
but gridview doesn't redraw with new data.
gridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
getTable(position).setStatus("busy"); // change data
gridView.invalidateViews(); // and redraw
}
Or, I do another way:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.waiter_view_fragment, container, false);
gridView = (GridView) (rootView).findViewById(R.id.waiterGridView);
gridView.setAdapter(new ImageAdapterHost(this, getActivity()));
// Add this line here
((BaseAdapter)gridView.getAdapter()).notifyDataSetChanged();
}
The answer still be same. My gridview doesn't redrawn, although when I test data, the data really changes, but dont update my gridview.
Please teach me how to redraw gridview fragment after data change.
Thanks :)