Метод lerp
Метод lerp класса Size
смешивает ширину и высоту двух размеров.
Доля 0 даёт первый размер, доля 1 даёт второй, доля 0.5 берёт середину.
Синтаксис
Size.lerp(Size(40, 20), Size(120, 80), 0.5)
Параметры
| Параметр | Описание |
|---|---|
a |
Первый размер. При доле 0 результат равен ему.
|
b |
Второй размер. При доле 1 результат равен ему.
|
t |
Доля смешивания от 0 до 1.
|
Пример
Давайте возьмём середину между 40 x 20 и 120 x 80:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Builder(
builder: (context)
{
Size size = Size.lerp(Size(40, 20), Size(120, 80), 0.5)!;
return Text(size.width.toStringAsFixed(0) + ' x ' + size.height.toStringAsFixed(0));
},
),
),
),
),
);
}
На экране 80 x 50. Это середина обеих сторон.
Пример
Давайте оставим первый размер, доля равна нулю:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Builder(
builder: (context)
{
Size size = Size.lerp(Size(40, 20), Size(120, 80), 0)!;
return Text(size.width.toStringAsFixed(0) + ' x ' + size.height.toStringAsFixed(0));
},
),
),
),
),
);
}
На экране 40 x 20, то есть первый размер без примеси второго.
Смотрите также
-
метод
fromWidth,
который собирает размер с заданной шириной и нулевой высотой -
метод
fromHeight,
который собирает размер с заданной высотой и нулевой шириной -
метод
square,
который собирает квадрат с равными шириной и высотой -
класс
SizedBox,
который рисует блок заданной ширины и высоты