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

Класс TextStyle

Класс TextStyle задаёт оформление символов для Text и TextSpan. Главные поля: color, fontSize, fontWeight типа FontWeight, fontStyle типа FontStyle, decoration типа TextDecoration, height межстрочный интервал, letterSpacing. Изменить стиль помогают методы copyWith, merge, apply, lerp.

Синтаксис

TextStyle( color: Colors.black, fontSize: 16, fontWeight: FontWeight.bold, )

Параметры

Параметр Описание
color Цвет символов. Принимает Color.
fontSize Размер шрифта в логических пикселях.
fontWeight Насыщенность шрифта. Принимает FontWeight.
fontStyle Прямое или курсивное начертание. Принимает FontStyle.
decoration Линия у текста: подчёркивание или зачёркивание. Принимает TextDecoration.
height Межстрочный интервал как множитель размера шрифта.
letterSpacing Дополнительный промежуток между буквами.

Методы

Метод Описание
copyWith Создаёт новый TextStyle с изменёнными полями. Давайте рассмотрим его на примерах.
merge Объединяет два стиля, поля второго перекрывают первый. Давайте рассмотрим его на примерах.
apply Умножает размер, интервалы и высоту на коэффициенты.
lerp Интерполирует между двумя стилями по параметру t. Давайте рассмотрим его на примерах.

Пример

Давайте зададим подчёркнутый синий текст:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: Text( 'abcde', style: TextStyle( color: Colors.blue, fontSize: 18, decoration: TextDecoration.underline, ), ), ), ), ), ); }

На экране строка 'abcde' будет синей и с линией под текстом.

Пример

Давайте включим курсив и увеличим межбуквенный интервал:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: Text( '12345', style: TextStyle( fontStyle: FontStyle.italic, letterSpacing: 4, fontSize: 20, ), ), ), ), ), ); }

На экране текст '12345' будет наклонным и с заметными зазорами между буквами.

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

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