Это должно работать в большинстве случаев, однако у меня возникла та же проблема при попытке обновить представление списка из базы данных.Я тоже позвонил adapter.notifyDataSetChanged();
, но listview вообще не обновлялся, хотя я мог подтвердить, что данные были изменены, а размер ArrayList
увеличился.
В конце я реализовал метод внутри своегообычай Adapter
простирающийся от BaseAdapter
только для вызова notifyDataSetChanged
там, как
public class MyAdapter extends BaseAdapter{
public void updateData(){
this.notifyDataSetChanged();
}
}
Затем в Activity
я просто звоню adapter.updateData()
.И это сработало для меня.Очень странно.