Метод lerp
Метод lerp класса
TextStyle строит промежуточный
TextStyle
между a и b. Параметр t
от 0.0 до 1.0 задаёт долю второго стиля.
Используют в анимациях текста.
Синтаксис
TextStyle.lerp(a, b, t)
Параметры
| Параметр | Описание |
|---|---|
a |
Начальный стиль. При t == 0.0 результат близок к нему.
|
b |
Конечный стиль. При t == 1.0 результат близок к нему.
|
t |
Доля смешивания. Может выходить за отрезок для экстраполяции. |
Пример
Давайте покажем середину между мелким и крупным текстом:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Text(
'abcde',
style: TextStyle.lerp(
TextStyle(fontSize: 12, color: Colors.black),
TextStyle(fontSize: 24, color: Colors.black),
0.5,
),
),
),
),
),
);
}
На экране 'abcde' будет среднего размера между 12 и 24.
Пример
Давайте смешаем чёрный и синий цвет наполовину:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Text(
'12345',
style: TextStyle.lerp(
TextStyle(color: Colors.black),
TextStyle(color: Colors.blue),
0.5,
),
),
),
),
),
);
}
На экране текст '12345' будет промежуточного оттенка между чёрным и синим.
Смотрите также
-
метод
merge,
который сливает стили без анимации -
метод
copyWith,
который меняет отдельные поля стиля -
класс
TextStyle,
между экземплярами которого идётlerp -
класс
FontWeight,
который тоже интерполируется вlerp