Мейнстрим решением для обновления ListView после изменения данных является использование метода arrayAdapter.notifyDataSetChanged(), где arrayAdapter – Ваш адаптер. Но к сожалению, это не всегда срабатывает.
Я использовал в своем случае другое решение, которое сработало – просто переопределял адаптер целиком. Теперь таблица обновляется после изменения данных в массиве, с которым она связана.
private ArrayAdapter arrayAdapter;
arrayAdapter = new ArrayAdapter
(this, R.layout.list_item, diseasesArray);
setListAdapter(arrayAdapter);
//
//Здесь код по обновлению данных в diseaseArray
//
arrayAdapter = new ArrayAdapter
(DiseaseActivity.this, R.layout.list_item, diseasesArray);
setListAdapter(arrayAdapter);