Middle
Какво е BuildContext във Flutter и как се използва?
sobes.tech AI
Отговор от AI
BuildContext — това е дръжка, която указва местоположението на widget в дървото на widget-овете. Всяко widget има свой собствен BuildContext.
Използва се:
- За достъп до данни от предци: Например,
Theme.of(context)за получаване на текущата тема. - За търсене на предшестващи widget-и:
Navigator.of(context)за навигация. - За изпълнение на действия, зависещи от позицията в дървото: Показване на
SnackBarчрезScaffoldMessenger.of(context). - За получаване на размера и позицията на widget: Чрез
BuildContext.sizeилиBuildContext.findRenderObject().
Пример:
// Достъп до ThemeData
ThemeData theme = Theme.of(context);
// Навигация
Navigator.push(
context,
MaterialPageRoute(builder: (context) => NextScreen()),
);
// Показване на SnackBar
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text('Здравей')),
);
BuildContext е валиден само по време на жизнения цикъл на съответния widget.