Ao preencher os campos da FormScreen e apertar o botão "Adicionar", o aplicatio volta para a tela inicial, porém a lista não atualiza logo de cara, é necessário entrar e sair da tela uma segunda vez para que a tarefa nova seja carregada.
Seguem as linhas com os contexts:
home: TaskInherited(child: const InitialScreen()),
floatingActionButton: FloatingActionButton(
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (contextNew) => FormScreen(taskContext: context),
),
);
},
child: const Icon(Icons.add),
),
ElevatedButton(
onPressed: () {
if (_formKey.currentState!.validate()) {
// print(nameController.text);
// print(int.parse(dificultyController.text));
// print(imageController.text);
TaskInherited.of(widget.taskContext).newTask(
nameController.text,
imageController.text,
int.parse(dificultyController.text));
ScaffoldMessenger.of(context).showSnackBar(
const SnackBar(
content: Text('Criando nova tarefa'),
),
);
Navigator.pop(context);
}
},
child: Text('Adicionar'),
)
Aqui está o github do projeto até então: https://github.com/cmsulzbeck/primeiro_app_flutter