Назад к вопросам
Middle
153
questionbank
Что такое BuildContext в Flutter и как он используется?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
BuildContext — это ручка, указывающая на местоположение виджета в дереве виджетов. Каждый виджет имеет свой BuildContext.
Он используется:
- Для доступа к данным из предков: Например,
Theme.of(context)для получения текущей темы. - Для поиска виджетов-предков:
Navigator.of(context)для навигации. - Для выполнения действий, зависящих от положения в дереве: Отображение
SnackBarчерезScaffoldMessenger.of(context). - Для получения размера и положения виджета: Через
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('Hello')),
);
BuildContext действителен только в течение жизненного цикла соответствующего виджета.