Класс RelativeRect
Класс RelativeRect описывает прямоугольник внутри родителя четырьмя числами:
left, top, right и bottom.
Это не ширина и высота, а расстояние от края ребёнка до того же края родителя.
Такой прямоугольник принимает
Positioned.fromRelativeRect.
Синтаксис
RelativeRect.fromLTRB(8, 8, 8, 8)
Параметры
| Параметр | Описание |
|---|---|
left |
Расстояние от левого края дочернего виджета до левого края родителя. |
top |
Расстояние от верхнего края дочернего виджета до верхнего края родителя. |
right |
Расстояние от правого края дочернего виджета до правого края родителя. |
bottom |
Расстояние от нижнего края дочернего виджета до нижнего края родителя. |
Пример
Давайте отодвинуть блок на 8 пикселей от каждого края:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Stack(
children: [
Positioned.fromRelativeRect(
rect: RelativeRect.fromLTRB(8, 8, 8, 8),
child: ColoredBox(
color: Colors.blue,
child: Text('abcde'),
),
),
],
),
),
),
);
}
На экране синий блок с надписью 'abcde' отступает на 8 пикселей от краёв Stack.
Смотрите также
-
метод
fromRelativeRect,
который ставит дочерний виджет по такому прямоугольнику -
виджет
Positioned,
который задаёт положение вStackчислами left и top -
виджет
Stack,
в котором лежат абсолютно спозиционированные виджеты -
класс
EdgeInsets,
который хранит внутренние отступы, а не положение в стеке