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

Функция lightColorScheme

Функция lightColorScheme возвращает ColorScheme для светлого интерфейса. Без аргументов подставляет оттенки Material по умолчанию. Свои цвета передают именованными параметрами, например primary и surface. Схему не рисуют на экране сами: её кладут в MaterialTheme.

Синтаксис

val scheme = lightColorScheme( primary = Color.Blue, surface = Color.White, )

Параметры

Параметр Описание
primary Главный акцентный цвет. Тип - Color.
onPrimary Цвет текста и иконок поверх primary.
background Фон всего экрана за content.
surface Фон карточек, панелей и листов.

Пример

Давайте применим светлую схему по умолчанию:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.material3.lightColorScheme class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { MaterialTheme(colorScheme = lightColorScheme()) { Text(text = "abcde") } } } }

На экране текст получит цвета стандартной светлой темы Material.

Пример

Давайте перекрасим primary и surface:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.background import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.material3.lightColorScheme import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { val scheme = lightColorScheme( primary = Color(0xFF2E7D32), onPrimary = Color.White, surface = Color(0xFFF1F8E9), ) MaterialTheme(colorScheme = scheme) { Box( modifier = Modifier .fillMaxSize() .background(MaterialTheme.colorScheme.surface), ) { Text( text = "12345", color = MaterialTheme.colorScheme.primary, ) } } } } }

На экране фон станет светло-зелёным, текст "12345" - тёмно-зелёным primary.

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

  • функция darkColorScheme,
    которая собирает тёмную палитру
  • функция MaterialTheme,
    которая принимает colorScheme
  • класс ColorScheme,
    который возвращает lightColorScheme
  • класс Color,
    которым задают отдельные слоты схемы
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить