Какие компоненты или инструменты ты используешь для создания интерфейсов, адаптирующихся под различные размеры экранов?
Answer from AI
sobes.tech AI
Для создания адаптивных интерфейсов во Flutter обычно используют следующие компоненты и подходы:
-
MediaQuery — позволяет получить размеры экрана и ориентацию устройства, чтобы подстроить размеры и расположение виджетов.
-
LayoutBuilder — предоставляет ограничения по размеру родительского виджета, что помогает строить разные макеты в зависимости от доступного пространства.
-
Flexible и Expanded — помогают гибко распределять пространство между дочерними виджетами.
-
AspectRatio — сохраняет заданное соотношение сторон.
-
OrientationBuilder — реагирует на изменение ориентации экрана.
-
Responsive Frameworks и пакеты (например, flutter_screenutil, responsive_builder) — упрощают создание адаптивных интерфейсов.
Пример использования MediaQuery:
Widget build(BuildContext context) {
var screenWidth = MediaQuery.of(context).size.width;
if (screenWidth < 600) {
return MobileLayout();
} else {
return TabletLayout();
}
}