Sobes.tech
Middle

Mi az a BuildContext a Flutterben, és hogyan használják?

sobes.tech MI

Válasz az MI-től

BuildContext — ez egy fogantyú, amely megmutatja a widget helyét a widgetfa szerkezetében. Minden widgetnek megvan a saját BuildContext-je.

Használják:

  • Az őselemek adataihoz való hozzáféréshez: Például, Theme.of(context) a jelenlegi téma lekéréséhez.
  • Őselem widgetek kereséséhez: Navigator.of(context) navigációhoz.
  • A fa szerkezetében lévő pozíciótól függő műveletek végrehajtásához: SnackBar megjelenítése a ScaffoldMessenger.of(context) segítségével.
  • A widget méretének és helyzetének lekéréséhez: A BuildContext.size vagy BuildContext.findRenderObject() segítségével.

Példa:

// ThemeData elérése
ThemeData theme = Theme.of(context);

// Navigáció
Navigator.push(
  context,
  MaterialPageRoute(builder: (context) => NextScreen()),
);

// SnackBar megjelenítése
ScaffoldMessenger.of(context).showSnackBar(
  SnackBar(content: Text('Szia')),
);

A BuildContext csak az adott widget életciklusa alatt érvényes.