GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Atualizar ListView após inserir informações por DialogFragment


#1

Ola, estou criando um aplicativo que utiliza uma ListView para mostra um conjunto de itens, esses item são criados pelo usuário através de um DialogFragment, para chamar o Dialog existe um botão. O Dialog esta abrindo normalmente e salvando as informações no banco de dados.
O problema esta na hora de atualizar a ListView, quando o botão para chamar o Dialog é acionado, as duas funções são executadas paralelamente, uma para mostra o Dialog e outra para atualizar a ListView. Logo a ListView não é atualizada com o ultimo item criado, para atualizá-la é necessário acionar o botão novamente.
Minha duvida é se existe alguma forma de fazer com esses métodos sejam chamados de forma seqüencial?
Por exemplo: fazer com que a função para atualizar ListView seja chamada somende depois de o Dialog se fechado


#2

Ola,

Quando voce manda abrir o dialog, o update tem que ser apenas nele.
quando voce salvar o objeto no dialog voce faz o update no form e no dialog.


#3

Acontece que criei uma classe para o dialog

cad.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.i(TAG, “botao cadastro”);
ChamaJanela();
atualiza();
Log.i(TAG, “saindo botao cadastra”);
}
});

private void ChamaJanela()
{
    Log.i(TAG, "ChamaJanela");
    FragmentManager fm = getSupportFragmentManager();
    JanelaCadastro janela = JanelaCadastro.newInstance("Cadastro de Produtos");
    janela.setContext(context);
    janela.show(fm,"janela");
}

e dentro dessa classe criei uma conexão com o banco de dados. Sera que não tem alguma forma de realizar a atualização sem ter que implementar o dialog na activity principal


#4

No seu metodo onClick voce chama o metodo ChamaJanela e atualiza.
No caso esse atualiza é para o listview?
Se sim, esta no lugar errado, deveria chamar ele no botao ok do dialog.