Изучение различных методов добавления действий в панель приложений Flutter с вкладками

Метод 1: использование свойства Actions панели приложений.
Самый простой способ добавить действия в панель приложений — использовать свойство actions. Это свойство принимает список виджетов, позволяющих добавлять кнопки, значки или любые другие интерактивные элементы в качестве действий. Вот пример:

AppBar(
  title: Text('My App'),
  actions: [
    IconButton(
      icon: Icon(Icons.search),
      onPressed: () {
        // Perform search action
      },
    ),
    IconButton(
      icon: Icon(Icons.settings),
      onPressed: () {
        // Perform settings action
      },
    ),
  ],
)

Метод 2. Создание пользовательского виджета AppBar
Другой подход — создать собственный виджет AppBar, который инкапсулирует желаемые действия. Этот метод обеспечивает большую гибкость и возможность повторного использования. Вот пример:

class CustomAppBar extends StatelessWidget implements PreferredSizeWidget {
  final List<Widget> actions;
  CustomAppBar({required this.actions});
  @override
  Widget build(BuildContext context) {
    return AppBar(
      title: Text('My App'),
      actions: actions,
    );
  }
  @override
  Size get preferredSize => Size.fromHeight(kToolbarHeight);
}
// Usage:
CustomAppBar(
  actions: [
    IconButton(
      icon: Icon(Icons.search),
      onPressed: () {
        // Perform search action
      },
    ),
    IconButton(
      icon: Icon(Icons.settings),
      onPressed: () {
        // Perform settings action
      },
    ),
  ],
)

Метод 3: использование TabBarView с DefaultTabController
Если вы хотите иметь разные действия для каждой вкладки в TabBarView, вы можете использовать DefaultTabControllerвместе с TabBarи TabBarView. Вот пример:

DefaultTabController(
  length: 2,
  child: Scaffold(
    appBar: AppBar(
      title: Text('My App'),
      bottom: TabBar(
        tabs: [
          Tab(text: 'Tab 1'),
          Tab(text: 'Tab 2'),
        ],
      ),
    ),
    body: TabBarView(
      children: [
        // Content of Tab 1
        // ...
      ],
    ),
  ),
)

В этой статье мы рассмотрели различные способы добавления действий на панель приложений с помощью вкладок во Flutter. Мы узнали об использовании свойства actions, создании собственного виджета AppBar и использовании TabBarView с DefaultTabController. Эти методы обеспечивают гибкость и позволяют настраивать AppBar в соответствии с требованиями вашего приложения. Реализуя эти методы, вы можете улучшить взаимодействие с пользователем и предоставить дополнительную функциональность своим приложениям Flutter.