Buscar pacotes, repositórios e categorias de apps

Capa de inkblob_navigation_bar
Detalhes do pacotev0.1.2

inkblob_navigation_bar

Uma barra de navegação personalizada com efeito suave e dinâmico de transição de bolha de tinta.

Downloads em 30 dias
16
Curtidas
39
Pontos Pub
70

Instalar pacote

flutter pub add inkblob_navigation_bar

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

Uma barra de navegação inferior personalizável com um efeito suave e dinâmico de transição de bolha de tinta que melhora a interação do usuário com feedback visual fluido. Projetada para aplicativos Flutter, oferece uma alternativa elegante às barras de navegação tradicionais, animando o item selecionado com uma onda luminosa e expansiva semelhante à tinta. O pacote é leve e fácil de integrar, ideal para interfaces modernas que enfatizam animações sutis e microinterações bem polidas. Suporta cores, tamanhos e estilos de ícones personalizados, permitindo que os desenvolvedores se alinhem perfeitamente com a linguagem de design do seu aplicativo.

Casos de uso

  • Melhorando a experiência do usuário na navegação de aplicativos móveis
  • Criando guias inferiores visualmente atraentes
  • Adicionando feedback animado à seleção de guia
  • Modernização de barras de navegação legadas
  • Criando interfaces minimalistas com elementos dinâmicos

Principais recursos

  • Animação suave de transição de mancha de tinta
  • Cor e tamanho personalizáveis
  • Integração fácil com aplicativos Flutter existentes
  • Suporta personalização de ícone e rótulo
  • Leve e eficiente

Indicado para

  • Desenvolvedores Flutter em busca de interfaces modernas de navegação
  • Aplicativos focados na experiência do usuário e no acabamento visual
  • Designers implementando navegação inferior interativa
  • Projetos que exigem animações sutis, mas impactantes
  • Aplicativos móveis com estética limpa e contemporânea

Considerações

  • Pode não se adequar a todos os estilos de design ou marca
  • Impacto no desempenho em dispositivos de baixa potência
  • Personalização limitada do comportamento específico da plataforma
  • Requer contraste de cor cuidadoso para acessibilidade
  • Não recomendado para estruturas de navegação altamente complexas

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

Inkblob_navigation_bar

A custom navigation bar with smooth & dynamic ink blob transition effect.

Overview

This packages was inspired by this post from Dribbble

Implemented:

Gallery

Dynamic Movement
Customizable Curve
Custom Colors
Optional Titles
Works with any widgets

How to install

Simply add the package to your dependencies! No other steps required :)

Documentation

To use the InkblobNavigationBar you can simply use it in the bottomNavigationBar field of your material scaffold:

Scaffold(
  ...
  bottomNavigationBar: InkblobNavigationBar(
    ...
  )
)
You can customize these attributes in the navigation bar.
Attributes Type Description Default
showElevation bool Enable subtle shadow effect true
items List<InkblobBarItem> Item data for NavigationBar required
onItemSelected Function(int) Callback function when item tapped null
selectedIndex int Selected item index of navigation bar. required
previousIndex int Previously selected item index of navigation bar. selectedIndex
iconSize double Size of icons. 24.0
backgroundColor Color Background color of [CustomNavigationBar] Theme.bottomAppBarColor
containerHeight double Height of the NavigationBar 60
itemWidth double Total width of each item 2*containerHeight
curve Curve Animation curve of scale effect Curves.easInOutExpo
animationDuration Duration Duration of the total animation Duration(milliseconds: 270)

Attention: Both the selectedIndex and previousIndex are required for the animation to perform, an example of how to implement this is shown in the provided example app.

To customize the items in the navigation bar, just supply a list of InkblobBarItem like this.

InkblobNavigationBar(
  ...
  items: [
    // Simple Icon with a Title & Color
    InkblobBarItem(
      title: const Text('User'),
      filledIcon: const Icon(SpiriIcons.fi_sr_user),
      emptyIcon: const Icon(SpiriIcons.fi_rr_user),
      color: Colors.blue,
    ),
    // Custom Containers
    InkblobBarItem(
      filledIcon: Container(
        decoration: BoxDecoration(
          color: Colors.black,
          borderRadius: BorderRadius.circular(12),
        ),
      ),
      emptyIcon: Container(
        decoration: BoxDecoration(
          borderRadius: BorderRadius.circular(12),
          border: Border.all(color: Colors.black, width: 2),
        ),
      ),
    ),
    // Even Text Widgets
    InkblobBarItem(
      filledIcon: const Text('❤️', style: TextStyle(fontSize: 20)),
      emptyIcon: const Text('🖤', style: TextStyle(fontSize: 20)),
      color: Colors.red,
    ),
  ],
)

Example

Check the example app for a full implementation example.

Contribute

Issues and pull requests are always welcome!
If you found this project helpful, consider buying me a cup of :coffee:

Categorias

Repositório-fonte

Projetos que usam este pacote

Ainda não há dados.