Sobes.tech
Middle

O que é o BuildContext no Flutter e como é utilizado?

sobes.tech IA

Resposta da IA

BuildContext — é uma referência que indica a localização do widget na árvore de widgets. Cada widget tem o seu próprio BuildContext.

É usado:

  • Para aceder a dados dos antepassados: Por exemplo, Theme.of(context) para obter o tema atual.
  • Para procurar widgets antepassados: Navigator.of(context) para navegação.
  • Para executar ações que dependem da posição na árvore: Mostrar um SnackBar através de ScaffoldMessenger.of(context).
  • Para obter o tamanho e a posição do widget: Através de BuildContext.size ou BuildContext.findRenderObject().

Exemplo:

// Acesso ao ThemeData
ThemeData theme = Theme.of(context);

// Navegação
Navigator.push(
  context,
  MaterialPageRoute(builder: (context) => NextScreen()),
);

// Mostrar SnackBar
ScaffoldMessenger.of(context).showSnackBar(
  SnackBar(content: Text('Olá')),
);

BuildContext é válido apenas durante o ciclo de vida do widget correspondente.