Виджет Padding в Flutter
Виджет
Padding
оборачивает одного потомка и добавляет пустое
пространство по краям. Размер отступов задаёт
объект EdgeInsets.
Самый частый вариант - одинаковые поля со
всех сторон:
Padding(
padding: const EdgeInsets.all(16),
child: Text('Text with padding'),
)
Конструктор EdgeInsets.symmetric задаёт
горизонтальный
и вертикальный отступ отдельно:
horizontal слева и справа,
vertical сверху и снизу. Удобно для
списков, где нужны боковые поля 16 и меньший
зазор между строками:
Padding(
padding: const EdgeInsets.symmetric(
horizontal: 24,
vertical: 8,
),
child: Text('List row'),
)
Конструктор EdgeInsets.only включает
выбранные
стороны: только left, только top
или любую комбинацию. Так сдвигают контент
от одного края, не трогая остальные:
import 'package:flutter/material.dart';
void main() {
runApp(const MaterialApp(home: HomePage()));
}
class HomePage extends StatelessWidget {
const HomePage({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
body: Padding(
padding: const EdgeInsets.only(top: 48, left: 16),
child: const Text('Padded from the top and left'),
),
);
}
}
Оберните Text с фразой 'Card'
в Padding с EdgeInsets.all(24)
и поместите в body. Текст не должен
прилипать к краям экрана.