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

Класс SpanStyle

Класс SpanStyle описывает оформление фрагмента: fontSize, fontWeight, color и другие поля начертания. Его передают в pushStyle или в withStyle при сборке AnnotatedString. Выравнивание абзаца задают через TextStyle или TextAlign у функции Text.

Синтаксис

SpanStyle( fontSize = 18.sp, fontWeight = FontWeight.Bold, color = Color.Red, )

Методы

Метод Описание
copy Создаёт копию стиля фрагмента с новыми полями.

Пример

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

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.material3.Text import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.SpanStyle import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.withStyle import androidx.compose.ui.unit.sp class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { val annotated = buildAnnotatedString { append("abcde") addStyle( SpanStyle( fontSize = 20.sp, fontWeight = FontWeight.Bold, color = Color.Red, ), start = 3, end = 5, ) } Text(text = annotated) } } }

На экране "de" будет крупнее, жирнее и краснее, чем "abc".

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

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