Метод scale
Метод scale класса BoxShadow
возвращает новую тень.
Сдвиг, размытие и расширение умножаются на коэффициент.
Цвет при коэффициенте меньше единицы становится прозрачнее.
Синтаксис
shadow.scale(2)
Параметры
| Параметр | Описание |
|---|---|
factor |
Множитель сдвига и размытия. |
Пример
Давайте оставим короткое размытие:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Container(
padding: EdgeInsets.all(16),
decoration: BoxDecoration(
color: Color(0xFFFFFFFF),
boxShadow: [
BoxShadow(color: Color(0xFF000000), blurRadius: 8, offset: Offset(6, 6)).scale(1),
],
),
child: Text('abcde'),
)
),
),
),
);
}
На экране белая карточка со строкой abcde и небольшой тенью.
Пример
Давайте увеличим тень втрое:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Container(
padding: EdgeInsets.all(16),
decoration: BoxDecoration(
color: Color(0xFFFFFFFF),
boxShadow: [
BoxShadow(color: Color(0xFF000000), blurRadius: 8, offset: Offset(6, 6)).scale(3),
],
),
child: Text('12345'),
)
),
),
),
);
}
На экране белая карточка со строкой 12345. Тень уехала дальше и размыта сильнее.
Смотрите также
-
метод
lerp,
который смешивает две тени в заданной доле -
метод
lerpList,
который смешивает два списка теней -
метод
copyWith,
который заменяет цвет, сдвиг или размытие тени -
класс
BoxDecoration,
который принимает список теней