Метод copyWith
Метод copyWith класса StadiumBorder возвращает StadiumBorder с новым side.
Обычно меняют обводку BorderSide.
Форма капсулы при этом сохраняется.
Синтаксис
value.copyWith(/* поля */)
Параметры
| Параметр | Описание |
|---|---|
… |
Новые поля; непереданные остаются прежними. |
Пример
Давайте изменим поля через copyWith:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Container(
width: 160,
height: 80,
decoration: BoxDecoration(color: Colors.white, border: Border.all(color: Colors.grey), borderRadius: BorderRadius.circular(8)),
child: const Center(
child: Text('abcde'),
),
),
),
),
),
);
}
На экране блок с рамкой.
Пример
Давайте зададим другой цвет рамки:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Container(
width: 160,
height: 80,
decoration: BoxDecoration(color: Colors.white, border: Border.all(color: Colors.deepPurple, width: 3)),
child: const Center(
child: Text('abcde'),
),
),
),
),
),
);
}
На экране фиолетовая рамка.
Смотрите также
-
класс
CircleBorder,
круг для кнопки и карточки -
класс
RoundedRectangleBorder,
скругленный прямоугольник для кнопки и карточки -
класс
BoxShadow,
тень блока -
класс
LinearGradient,
линейный градиент