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

Виджет DefaultTextStyle

Виджет DefaultTextStyle наследует оформление вниз по дереву: все Text без своего style берут параметр style отсюда. Также можно задать textAlign, overflow, maxLines для дочерних текстов. Обёрнутое поддерево передают в child.

Синтаксис

DefaultTextStyle( style: TextStyle(fontSize: 18), child: Text('abcde'), )

Параметры

Параметр Описание
style Стиль по умолчанию. Принимает TextStyle.
child Поддерево, для которого действует стиль.
textAlign Выравнивание для дочерних текстов. Принимает TextAlign.
overflow Обрезка для дочерних текстов. Принимает TextOverflow.
maxLines Лимит строк для дочерних текстов.

Методы

Метод Описание
of Читает ближайший DefaultTextStyle из контекста.
merge Сливает новый стиль с текущим DefaultTextStyle.

Пример

Давайте зададим красный цвет для всех Text внутри:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: DefaultTextStyle( style: TextStyle(color: Colors.red, fontSize: 20), child: Column( mainAxisSize: MainAxisSize.min, children: [ Text('abcde'), Text('12345'), ], ), ), ), ), ), ); }

На экране обе строки будут красными и крупными без отдельного style у каждого Text.

Пример

Давайте переопределим стиль только у одного Text:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: DefaultTextStyle( style: TextStyle(fontSize: 16, color: Colors.black), child: Column( mainAxisSize: MainAxisSize.min, children: [ Text('abcde'), Text( '12345', style: TextStyle(fontWeight: FontWeight.bold), ), ], ), ), ), ), ), ); }

На экране первая строка обычная, вторая жирная: локальный style слился с DefaultTextStyle.

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

  • класс TextStyle,
    который описывает шрифт и цвет в параметре style
  • метод of,
    который читает стиль из BuildContext
  • метод merge,
    который накладывает стиль поверх текущего
  • виджет Text,
    который использует унаследованный стиль
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить