0Pricing
Jetpack Compose Academy · Урок

AnnotatedString: форматированный смешанный текст

Стилизуйте фрагменты внутри одного блока Text.

«AnnotatedString: форматированный смешанный текст» — бесплатный урок Jetpack Compose Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Jetpack Compose Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Jetpack Compose Academy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

One Text, Many Styles

Sometimes one word in a sentence needs to stand out. AnnotatedString lets you style spans inside a single Text composable.

Why Not Two Texts

You could split words into separate Texts, but they would wrap awkwardly. AnnotatedString keeps everything as one flowing, naturally wrapping line.

Build It with buildAnnotatedString

Create rich text using the buildAnnotatedString builder. Inside it you append plain text and styled sections in the order you want them shown.

val s = buildAnnotatedString {
    append("Hello ")
}

Append Plain Text

Use append to add normal characters. Calls stack up in sequence, so the final string reads exactly in the order you appended.

append("Welcome, ")
append("friend")

Style a Span

Wrap part of the text in withStyle and give it a SpanStyle. Everything appended inside that block gets that style applied.

withStyle(SpanStyle(fontWeight = FontWeight.Bold)) {
    append("important")
}

SpanStyle Options

A SpanStyle can set color, fontWeight, fontStyle, fontSize, and more, so each span can look completely different from its neighbors.

SpanStyle(color = Color.Blue,
          fontWeight = FontWeight.Bold)

Render It in Text

Pass your finished AnnotatedString straight to Text, just like a plain string. Compose draws every styled span in place.

Text(text = annotatedGreeting)

Mix Bold and Color

Combine spans freely: a bold red word next to a normal sentence. Each withStyle block only affects the text appended inside it. 🙂

ParagraphStyle for Blocks

For line-level changes like alignment or spacing, use ParagraphStyle instead of SpanStyle. It styles whole paragraphs, not single words.

Tag Clickable Words

You can attach a LinkAnnotation so part of the text becomes tappable, perfect for inline links or a Terms of Service line.

Rich Text, One Element

AnnotatedString gives you mixed styling, links, and emphasis in a single Text. It is how you build natural, expressive copy.

Quick Check

You want one word bold inside a normal sentence in a single Text. What do you use?

Recap

You built rich text with buildAnnotatedString, styling spans via withStyle and SpanStyle. One Text can now hold many looks at once. 🎉

Часто задаваемые вопросы

Урок «AnnotatedString: форматированный смешанный текст» бесплатный?

Да — полный текст урока «AnnotatedString: форматированный смешанный текст» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Jetpack Compose Academy, подпишись на CoddyKit PRO. Курс Jetpack Compose Academy содержит 4 уроков всего.

Чему я научусь в уроке «AnnotatedString: форматированный смешанный текст»?

Стилизуйте фрагменты внутри одного блока Text. Ты практикуешь Jetpack Compose Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Jetpack Compose Academy?

Предыдущий опыт не требуется. Jetpack Compose Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «AnnotatedString: форматированный смешанный текст»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Jetpack Compose Academy?

Да. Каждый урок Jetpack Compose Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Composable Text
  2. Размер, насыщенность и стиль шрифта
  3. Цвет, выравнивание и переполнение
  4. AnnotatedString: форматированный смешанный текст
← Назад к Jetpack Compose Academy