Класс Offset
Класс Offset описывает пару чисел dx и dy.
Для точки это координаты, для тени это сдвиг вправо и вниз.
Положительный dx идёт вправо, положительный dy идёт вниз.
Сдвиг тени передают в offset у BoxShadow.
Синтаксис
Offset(4, 8)
Методы
| Метод | Описание |
|---|---|
fromDirection |
Собирает точку из угла и расстояния. |
lerp |
Плавно двигает точку между двумя Offset.
|
scale |
Умножает dx и dy точки на коэффициенты.
|
translate |
Сдвигает точку: к dx и dy прибавляются два числа.
|
Пример
Давайте сдвинем блок на Offset(24, 16):
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Stack(
children: [
Container(color: Colors.grey.shade300),
Positioned(left: 40, top: 30, child: Container(width: 80, height: 40, color: Colors.red)),
Positioned(left: 64, top: 46, child: Container(width: 80, height: 40, color: Colors.blue)),
],
),
),
),
);
}
На экране синий блок смещён относительно красного.
Пример
Давайте зададим offset у тени:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Container(
width: 140,
height: 70,
decoration: BoxDecoration(
color: Colors.white,
boxShadow: [BoxShadow(offset: Offset(8, 8), blurRadius: 4)],
),
),
),
),
),
);
}
На экране тень смещена на 8 px.
Смотрите также
-
класс
SweepGradient,
угловой градиент -
класс
RadialGradient,
радиальный градиент -
класс
Size,
ширина и высота -
класс
Rect,
прямоугольник