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

tasks não atualizam na tela inicial

Boa noite professores e colegas estudantes.

Apesar de ter verificado o código, não achei diferenças na semântica ou gramática,contudo as tarefas não atualizam. https://github.com/ridkhj/tasks_app

2 respostas
solução!

Olá, Ricardo, tudo bem com você?

Obrigado por deixar seu projeto completo, isso facilitou a análise do problema.

No arquivo initial_screen.dart você está utilizando um widget de SingleChildScrollView aninhado em uma Column, que por padrão não tem a capacidade de rolar automaticamente, enquanto no curso é ensinado utilizar um ListView, que é um widget que rola automaticamente e pode conter uma lista de filhos.

Para corrigir a atualização e garantir que suas tarefas sejam exibidas corretamente na tela e com a capacidade de rolar, você pode modificar seu código para usar um ListView em vez de SingleChildScrollView.

(1°) Forma de Correção:

body: Container(
        color: Colors.blueGrey[700],
        child: ListView(
          children: TaskInherited.of(context).taskList,
        ),
      ),

Se você preferir usar um Column em vez de um ListView, é possível, porém, o Column não possui a capacidade intrínseca de rolar, então precisaremos adicionar o atributo shrinkWrap: true ao ListView para que ele se ajuste ao conteúdo dentro do SingleChildScrollView.

(2°) Forma de Correção:

body: Center(
  child: Container(
    width: double.infinity,
    height: double.infinity,
    color: Colors.blueGrey[700],
    child: SingleChildScrollView(
      child: Column(
        mainAxisAlignment: MainAxisAlignment.spaceEvenly,
        crossAxisAlignment: CrossAxisAlignment.center,
        children: [
          ListView(
            shrinkWrap: true,
            children: TaskInherited.of(context).taskList,
          ),
        ],
      ),
    ),
  ),
),

Tanto da forma (1) quanto da (2), fará com que a lista seja atualizada após adicionar uma nova tarefa, como mostro no gif a seguir:

Gif que mostra a atualização das tarefas na tela após a mudança com os códigos fornecidos acima

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Muito obrigado Rafael, ajudou muito

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software