Метод hsl
Метод hsl класса
Color
в пакете androidx.compose.ui.graphics
строит цвет из модели HSL.
Оттенок hue задают в градусах от 0
до 360,
saturation и lightness - от 0
до 1,
alpha - прозрачность.
Синтаксис
hsl(hue = 120f, saturation = 1f, lightness = 0.4f)
Параметры
| Параметр | Описание |
|---|---|
hue |
Оттенок на цветовом круге в градусах. |
saturation |
Насыщенность от 0 до 1.
При 0 цвет становится серым.
|
lightness |
Светлота от 0 до 1.
0 даёт чёрный, 1 - белый.
|
alpha |
Прозрачность от 0 до 1.
Необязательный параметр, по умолчанию непрозрачный.
|
Пример
Давайте зальём фон зелёным из HSL:
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.size
import androidx.compose.material3.Text
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.hsl
import androidx.compose.ui.unit.dp
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
val leaf = hsl(hue = 120f, saturation = 0.8f, lightness = 0.35f)
Box(
modifier = Modifier
.size(120.dp)
.background(leaf),
) {
Text(text = "abcde")
}
}
}
}
На экране квадрат станет тёмно-зелёным.
Смотрите также
-
метод
hsv,
который собирает цвет из модели HSV -
класс
Color,
готовые константы вроде Green -
метод
copy,
который меняет альфа у готового цвета -
метод
background,
который рисует заливку на экране