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

Виджет SelectableText

Виджет SelectableText похож на Text, но поддерживает выделение и копирование. Строка - в data, оформление - в style, выравнивание - в textAlign. Параметры maxLines и overflow ограничивают длину на экране.

Синтаксис

SelectableText( 'abcde', style: TextStyle(fontSize: 16), )

Параметры

Параметр Описание
data Текст для показа и выделения.
style Стиль символов. Принимает TextStyle.
textAlign Выравнивание абзаца. Принимает TextAlign.
maxLines Максимум строк текста.
overflow Обрезка при нехватке места. Принимает TextOverflow.

Методы

Метод Описание
rich Выводит TextSpan с поддержкой выделения. Давайте рассмотрим его на примерах.

Пример

Давайте покажем текст, который можно выделить:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: SelectableText('abcde'), ), ), ), ); }

На экране по центру будет строка 'abcde'. Её можно выделить жестом или мышью.

Пример

Давайте ограничим текст двумя строками:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: SizedBox( width: 120, child: SelectableText( 'abcde 12345 abcde 12345', maxLines: 2, overflow: TextOverflow.ellipsis, ), ), ), ), ), ); }

На экране текст займет не больше двух строк, лишнее скроется с многоточием, выделить можно видимую часть.

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

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