TabBar

A TabBar no Flutter é um widget usado para criar abas na parte superior de uma interface de usuário. Cada aba geralmente contém conteúdo relacionado e você pode alternar entre as abas para mostrar diferentes informações. As abas são frequentemente usadas em conjunto com o TabBarView para controlar o conteúdo exibido para cada aba.

Aqui está um exemplo básico de como usar um DefaultTabController com TabBar e TabBarView para criar abas:

DefaultTabController(
  length: 3, // Número de abas
  child: Scaffold(
    appBar: AppBar(
      title: Text('Título da AppBar'),
      bottom: TabBar(
        tabs: <Widget>[
          Tab(text: 'Aba 1'),
          Tab(text: 'Aba 2'),
          Tab(text: 'Aba 3'),
        ],
      ),
    ),
    body: TabBarView(
      children: <Widget>[
        // Conteúdo da Aba 1
        Center(child: Text('Conteúdo da Aba 1')),
        
        // Conteúdo da Aba 2
        Center(child: Text('Conteúdo da Aba 2')),
        
        // Conteúdo da Aba 3
        Center(child: Text('Conteúdo da Aba 3')),
      ],
    ),
  ),
)

Neste exemplo, DefaultTabController é usado para controlar o número de abas (definido como 3). O TabBar é colocado na bottom da AppBar e contém três abas. O TabBarView contém três widgets, um para cada aba, que será exibido quando a aba correspondente for selecionada.

Você pode personalizar a aparência das abas e seu conteúdo, bem como adicionar funcionalidades específicas para cada aba, como listas, formulários ou outros widgets interativos.

Além disso, você pode adicionar um controlador TabController personalizado para ter um controle mais direto sobre as abas e seu comportamento. O TabController permite definir a lógica personalizada para o conteúdo de cada aba e manipular eventos de mudança de aba.