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

Класс TextSpan

Класс TextSpan не является виджетом: это описание фрагмента текста для RichText или Text.rich. Строка фрагмента - поле text, оформление - style, вложенные фрагменты - список children.

Синтаксис

TextSpan( text: 'abcde', style: TextStyle(fontSize: 16), children: [ TextSpan(text: '12345'), ], )

Параметры

Параметр Описание
text Содержимое фрагмента. Может быть пустым, если весь текст в children.
style Стиль фрагмента. Принимает TextStyle.
children Список вложенных InlineSpan, которые идут после text этого узла.

Пример

Давайте соберём RichText из двух TextSpan:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: RichText( text: TextSpan( style: TextStyle(color: Colors.black), children: [ TextSpan(text: 'abcde'), TextSpan( text: '12345', style: TextStyle(fontWeight: FontWeight.bold), ), ], ), ), ), ), ), ); }

На экране в одной строке пойдут обычный и жирный фрагменты.

Пример

Давайте вложим дочерние фрагменты в родительский text:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: RichText( text: TextSpan( text: 'abcde', style: TextStyle(color: Colors.black), children: [ TextSpan( text: '12345', style: TextStyle(color: Colors.blue), ), ], ), ), ), ), ), ); }

На экране сначала выведется 'abcde' чёрным, затем '12345' синим.

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

  • виджет RichText,
    который рисует дерево InlineSpan на экране
  • класс WidgetSpan,
    который вставляет виджет между фрагментами текста
  • метод rich,
    который строит Text из TextSpan
  • класс TextStyle,
    который задаёт оформление фрагмента
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить