Метод scale
Метод scale класса BoxDecoration
возвращает новое оформление.
Толщина рамки, радиус углов и размытие тени умножаются на коэффициент.
Заливка при коэффициенте меньше единицы становится прозрачнее.
Синтаксис
decoration.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),
border: Border.all(color: Color(0xFF1565C0), width: 8),
).scale(1),
child: Text('abcde'),
)
),
),
),
);
}
На экране белая карточка со строкой abcde и синей рамкой толщиной 8.
Пример
Давайте удвоим рамку:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Container(
padding: EdgeInsets.all(16),
decoration: BoxDecoration(
color: Color(0xFFFFFFFF),
border: Border.all(color: Color(0xFF1565C0), width: 8),
).scale(2),
child: Text('12345'),
)
),
),
),
);
}
На экране белая карточка со строкой 12345. Рамка стала толщиной 16.
Смотрите также
-
метод
copyWith,
который заменяет только переданные поля оформления -
метод
lerp,
который смешивает два оформления в заданной доле -
класс
BorderRadius,
который задаёт скругление углов оформления -
класс
Container,
который рисует оформление вокруг дочернего виджета