🧩Scaffold

1. Что такое Scaffold

Scaffold в Flutter — это основа пользовательского интерфейса, создающая базовый макет для экрана приложения. Он предоставляет структуру, в которой легко добавлять такие компоненты, как AppBar, FloatingActionButton, Drawer, и другие. Это основной виджет, используемый для создания традиционных макетов приложений с верхней панелью, основным содержимым и различными интерактивными элементами.

2. Пример использования Scaffold

3. Объяснение кода

  1. MaterialApp — виджет, который оборачивает Scaffold и задает тему для приложения.

  2. Scaffold — создает базовый макет экрана:

    • appBar — верхняя панель, содержащая заголовок.

    • body — основная область для размещения содержимого.

    • floatingActionButton — плавающая кнопка действия в правом нижнем углу.

Все настройки Scaffold

1. PreferredSizeWidget? appBar

Описание: Верхняя панель навигации, часто используемая для отображения заголовка экрана, кнопок и меню. Пример:


2. Widget? body

Описание: Основное содержимое экрана, где располагаются виджеты, которые видит пользователь. Пример:


3. Widget? floatingActionButton

Описание: Кнопка для быстрого действия, плавающая над контентом. Пример:


4. FloatingActionButtonLocation? floatingActionButtonLocation

Описание: Положение floatingActionButton на экране. Пример:


5. FloatingActionButtonAnimator? floatingActionButtonAnimator

Описание: Анимация появления и исчезновения для floatingActionButton. Пример:


6. List<Widget>? persistentFooterButtons

Описание: Кнопки, которые остаются закрепленными внизу экрана. Пример:


7. AlignmentDirectional persistentFooterAlignment

Описание: Положение кнопок persistentFooterButtons. Пример:


8. Widget? drawer

Описание: Виджет бокового меню, открываемого слева. Пример:


9. void Function(bool)? onDrawerChanged

Описание: Колбэк, который вызывается при открытии и закрытии drawer. Пример:


10. Widget? endDrawer

Описание: Виджет бокового меню, открываемого справа. Пример:


11. void Function(bool)? onEndDrawerChanged

Описание: Колбэк, вызываемый при открытии или закрытии endDrawer. Пример:


12. Widget? bottomNavigationBar

Описание: Нижняя панель навигации с несколькими пунктами. Пример:


13. Widget? bottomSheet

Описание: Нижний лист, отображаемый поверх содержимого экрана. Пример:


14. Color? backgroundColor

Описание: Цвет фона для Scaffold. Пример:


15. bool? resizeToAvoidBottomInset

Описание: Позволяет автоматически смещать содержимое экрана при появлении клавиатуры. Пример:


16. bool primary

Описание: Если true, Scaffold захватывает MediaQuery для определения высоты экрана. Пример:


17. DragStartBehavior drawerDragStartBehavior

Описание: Определяет, как начинается перетаскивание для открытия drawer. Пример:


18. bool extendBody

Описание: Позволяет контенту Scaffold находиться за нижней панелью навигации. Пример:


19. bool extendBodyBehindAppBar

Описание: Позволяет контенту располагаться за верхней панелью. Пример:


20. Color? drawerScrimColor

Описание: Цвет полупрозрачного слоя при открытом drawer. Пример:


21. double? drawerEdgeDragWidth

Описание: Ширина области экрана, откуда можно начать открытие drawer. Пример:


22. bool drawerEnableOpenDragGesture

Описание: Разрешает или запрещает жест для открытия drawer. Пример:


23. bool endDrawerEnableOpenDragGesture

Описание: Разрешает или запрещает жест для открытия endDrawer. Пример:


24. String? restorationId

Описание: ID для восстановления состояния экрана. Пример:


Итог

Scaffold — это мощный инструмент, который создает каркас экрана с множеством функций, таких как AppBar, Drawer, FloatingActionButton и другие. Он позволяет легко настраивать интерфейс приложения и добавлять базовые элементы для создания стандартного макета приложения.

Last updated