Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
763 of 1024 menu
◀ ▶

Метод build

Метод build класса StatelessWidget принимает BuildContext и возвращает один Widget. Фреймворк вызывает его при первой отрисовке и когда у предка меняются параметры.

Синтаксис

Widget build(BuildContext context)

Параметры

Параметр Описание
context Место виджета в дереве. Через него читают тему и ищут предков. Обязательный аргумент.

Пример

Давайте вернём Text из build:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: PlainText(), ), ), ), ); } class PlainText extends StatelessWidget { const PlainText({super.key}); @override Widget build(BuildContext context) { return const Text('abcde'); } }

На экране build вернёт Text с 'abcde'.

Пример

Давайте прочитаем цвет темы внутри build:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( theme: ThemeData(colorScheme: ColorScheme.fromSeed(seedColor: Colors.blue)), home: Scaffold( body: Center( child: ThemeLabel(), ), ), ), ); } class ThemeLabel extends StatelessWidget { const ThemeLabel({super.key}); @override Widget build(BuildContext context) { final color = Theme.of(context).colorScheme.primary; return Text('12345', style: TextStyle(color: color)); } }

На экране текст '12345' окрасится основным цветом темы.

Смотрите также

  • класс StatelessWidget,
    к которому относится метод build
  • метод build,
    который так же собирает UI у State
  • класс BuildContext,
    который передаётся в build
  • класс Builder,
    который вызывает build с новым контекстом
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить