В Jetpack Compose Glimmer Button представляет собой интерактивный компонент, оптимизированный для ввода с помощью очков с дисплеем, обеспечивающий четкую визуальную обратную связь через свои состояния, чтобы направлять действия пользователя.
Кнопки созданы на основе системы поверхностей Jetpack Compose Glimmer, которая автоматически обрабатывает физические свойства, такие как границы и глубина.
Стандартная кнопка содержит текстовую метку и дополнительные значки. Ее можно использовать для основных или второстепенных действий. Также существуют специализированные кнопки, такие как кнопки со значками и кнопки-переключатели , которые определены как отдельные компоненты в Jetpack Compose Glimmer.
По умолчанию

Большой

Анатомия
Кнопка состоит из контейнера и метки, с дополнительными значками в начале и конце.
| Часть | Описание |
|---|---|
Контейнер | Фоновая поверхность кнопки. |
Этикетка | Текст, описывающий действие. |
Значок (необязательно) | Опережающие или замыкающие визуальные индикаторы. |
Размеры
Кнопки Jetpack Compose Glimmer поддерживают два варианта размера. Они влияют на минимальную высоту и внутренний отступ.
| Размер | Минимальная высота | Использование по умолчанию |
|---|---|---|
Середина | 48.dp | Стандартные действия и списки (по умолчанию). |
Большой | 72.dp | Действия, на которые делается сильный акцент, или основные точки входа на экран. |
Штаты
Кнопки в Jetpack Compose Glimmer меняют свой внешний вид, чтобы сообщить о своем состоянии.
- Включено : состояние по умолчанию для интерактивной кнопки.
- В режиме фокусировки : При фокусировке кнопка применяет эффект
GlimmerTheme.depthEffectLevels.level1и подсветку границы в режиме фокусировки. - При нажатии : После активации на поверхность наносится полупрозрачное белое покрытие.
- Отключено : кнопка не реагирует на ввод, и её внешний вид изменён.
Настройки кнопок по умолчанию
Для стандартных кнопок применяются следующие значения по умолчанию:
- По умолчанию кнопки используют свойство
GlimmerTheme.typography.bodySmall. Убедитесь, что текст внутри кнопок лаконичен и четко описывает действие. - Форма кнопки по умолчанию —
GlimmerTheme.shapes.large. Такое единообразное закругление помогает пользователям различать кнопки на разных экранах очков.
Пример: Кнопка с текстом и иконками
Простая кнопка содержит только текстовую метку, но вы также можете добавить значки в начало (используя leadingIcon ) или конец (используя trailingIcon ) текста для предоставления дополнительного контекста.
Следующий код создает кнопку с иконкой как в начале, так и в конце текста:
Button( onClick = { /* Handle navigation or action */ }, leadingIcon = { Icon(FavoriteIcon, contentDescription = null) }, trailingIcon = { Icon(SendIcon, contentDescription = null) } ) { Text("Text Label", style = GlimmerTheme.typography.titleSmall) }