Метод lerp
Метод lerp класса LinearGradient
смешивает цвета двух градиентов.
Доля 0 оставляет первый градиент, доля 1 второй.
Синтаксис
LinearGradient.lerp(a, b, 0.5)
Параметры
| Параметр | Описание |
|---|---|
a |
Первый градиент. |
b |
Второй градиент. |
t |
Доля смешивания от 0 до 1.
|
Пример
Давайте оставим синюю заливку:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Container(
padding: EdgeInsets.all(16),
decoration: BoxDecoration(
gradient: LinearGradient.lerp(
LinearGradient(colors: [Color(0xFF1565C0), Color(0xFF1565C0)]),
LinearGradient(colors: [Color(0xFFC62828), Color(0xFFFFEB3B)]),
0,
),
),
child: Text('abcde'),
)
),
),
),
);
}
На экране синяя карточка со строкой abcde. Доля 0 берёт первый градиент, в нём оба цвета синие.
Пример
Давайте перейдём ко второму градиенту:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Container(
padding: EdgeInsets.all(16),
decoration: BoxDecoration(
gradient: LinearGradient.lerp(
LinearGradient(colors: [Color(0xFF1565C0), Color(0xFF1565C0)]),
LinearGradient(colors: [Color(0xFFC62828), Color(0xFFFFEB3B)]),
1,
),
),
child: Text('12345'),
)
),
),
),
);
}
На экране карточка со строкой 12345. Цвета перешли в красный и жёлтый.
Смотрите также
-
метод
scale,
который умножает матрицу линейного градиента -
метод
createShader,
который собирает закраску для холста -
класс
RadialGradient,
который красит круг от центра к краю -
класс
BoxDecoration,
который рисует градиент в поле gradient