notifyDataSetChanged após a alteração na configuração
Estou fazendo algum teste após alterar a configuração do dispositivo (alterar idioma, orientação, etc.) e percebo que, depois disso, o método "notifyDataSetChanged ()" não está funcionando.
O exemplo de ação:
Estou chamando updateList () sempre que faço uma ação como excluir, salvar etc. O usuário clica em um botão de exclusão, um DialogFragment é exibido: "Tem certeza de que deseja excluir?", Quando altero a orientação ou o idioma ou qualquer configuração do dispositivo e clique em "sim" na caixa de diálogo; os dados são removidos, mas a lista não é atualizada. Preciso sair da atividade e depois voltar para ver a alteração.
BookAdapter:
public void updateList(ArrayList<Book> books) {
bookList = books;
notifyDataSetChanged();
}
O que posso fazer para que funcione após a alteração na configuração?
Editar:
Construtor BookAdapter:
public BookAdapter(Context c, ArrayList<Book> books) {
context = c;
bookList = books
bookDAO = BookDAO.getInstance(context);
}
Livro: Fragment:
public class BookFragment extends Fragment {
private BookDAO bookDAO;
private BookAdapter bookAdapter;
private ListView listBook;
private View view;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
bookDAO = bookDAO.getInstance(getActivity());
view = inflater.inflate(R.layout.book_tab, container, false);
ArrayList<Book> listBook = null;
try {
llistBook = bookDAO.getAll();
} catch (Exception e) {
Toast.makeText(getActivity(), e.getMessage(), Toast.LENGTH_LONG).show();
return view;
}
bookAdapter = new BookAdapter(getActivity(), listBook);
listBook = (ListView)view.findViewById(R.id.listBook);
listBook.setAdapter(bookAdapter);
return view;
}
}