Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Lista de transferências ByteBank

Boa tarde a todos!

Seguinte neste aplicativo que estou seguindo com o curso de fundamentos, quando eu volto para a tela inicial depois que acrescentar uma transferência, não aparece nada na lista. Mesmo com os debugPrints informando que a lista esteja preenchida. Alguém poderia me dar uma luz?

Segue o link do gist com o código completo: https://gist.github.com/rafa-so/e9e2f253dd3f4ac00d6afc4f9b4a5ece

OBS

Uma coisa que reparei agora. Se eu faço esse fluxo todo (vou para o formulário, adiciono transferência e vou para a tela principal de listagem) realmente não aparece nada. Se eu for no android studio e salvo o arquivo aberto (mesmo que não tenha alterado nada mesmo), é reconstruída a lista de transferência e é apresentada a transferência que eu cadastrei.

Alguém já passou por isso?

Desde já agradecido

2 respostas

Complementando melhor minha dúvida. Coloquei ainda mais debugPrints, e parece que o flutter não está reconstruindo o a lista de transferências. Ele constrói a primeira vez, quando o app é iniciado. No entando quando eu volto do formulário (depois de preencher tudo) para a tela de listagem de transferências, não está reconstruindo essa lista.

solução!

Bom, resolvi continuar com as aulas. O instrutor falou exatamente do problema que estava executando.

Antes o meu Future.then estava assim:

future.then((transferenciaRecebida) {
                if (transferenciaRecebida != null) {
                    _transferencias.add(transferenciaRecebida);
                }
            });

Com isso ele nunca chamavao método build novamente. Agora está essa maneira:

future.then((transferenciaRecebida) {
              Future.delayed(Duration(seconds: 1), () {
                if (transferenciaRecebida != null) {
                  setState(() {
                    _transferencias.add(transferenciaRecebida);
                  });
                }
              });
            });