Buscar pacotes, repositórios e categorias de apps

Capa de loading_overlay
Detalhes do pacotev0.5.0

loading_overlay

Um widget de indicador de progresso modal que desaparece e reaparece. Envolver outro widget para bloquear o acesso ao widget durante uma chamada assíncrona.

AndroidiOSWebmacOSWindowsLinux
Downloads em 30 dias
20,4 mil
Curtidas
192
Pontos Pub
150

Instalar pacote

flutter pub add loading_overlay

Visão geral do pacote

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

Um pacote Flutter que fornece um widget de indicador de progresso modal projetado para desvanecer suavemente. Ele envolve qualquer widget para bloquear temporariamente a interação do usuário durante operações assíncronas, como chamadas à API ou processamento de dados. Ideal para exibir estados de carregamento sem interromper o fluxo da interface. O overlay pode ser controlado programaticamente, oferecendo uma maneira limpa e personalizável de indicar tarefas em andamento em múltiplas plataformas.

Casos de uso

  • Mostrando estado de carregamento durante as solicitações da API
  • Bloqueando a IU durante o processamento de dados
  • Melhorando a experiência do usuário durante operações assíncronas
  • Fornecendo feedback visual em formulários
  • Gerenciando tarefas em segundo plano nos aplicativos
  • Melhorando a responsividade em aplicativos web e móveis

Principais recursos

  • animações suaves de desvanecimento
  • Controle de sobreposição programável
  • Suporta todas as principais plataformas
  • Integração fácil com widgets existentes
  • Aparência personalizável
  • Interação não bloqueante do widget pai quando inativo

Indicado para

  • Desenvolvedores construindo aplicativos responsivos do Flutter
  • Equipes priorizando a experiência do usuário
  • Aplicativos que exigem indicadores de carregamento claros
  • Aplicações multiplataforma
  • aplicações com foco em UI
  • Projetos usando fluxos assíncronos

Considerações

  • Pode exigir gerenciamento cuidadoso do estado
  • A visibilidade do sobrepor deve ser alternada manualmente
  • Impacto no desempenho em interfaces complexas
  • Opções limitadas de personalização para estilos avançados
  • Não adequado para estados de carregamento contínuos
  • Depende da estrutura correta da árvore de widgets

README original

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

loading_overlay

A simple widget wrapper to enable modal progress HUD (a modal progress indicator, HUD = Heads Up Display).

Started as a fork of modal_progress_hud Inspired by this article.

Demo

Demo

See example for details

Usage

Add the package to your pubspec.yml file.

dependencies:
  loading_overlay: ^0.4.0

Next, import the library into your widget.

import 'package:loading_overlay/loading_overlay.dart';

Now, all you have to do is simply wrap your widget as a child of LoadingOverlay, typically a form, together with a boolean that is maintained in local state.

...
bool _isSaving_ = false
...

@override
Widget build(BuildContext context) {
  return Scaffold(
     body: LoadingOverlay(
      color: Colors.black.withOpacity(0.5),
      child: Container(
       Form(...)
      ),
      isLoading: _isSaving_
      ),
  );
}

Alternatively, show the overlay until a Future completes (non-breaking new feature):

// Start an async operation
final saveFuture = _saveFormAsync();

return LoadingOverlay.withFuture(
  future: saveFuture,
  color: Colors.black.withOpacity(0.5),
  child: Form(...),
);

Options

The current parameters are customizable in the constructor

LoadingOverlay({
  required bool isLoading,
  required Widget child,
  Widget progressIndicator = const CircularProgressIndicator(),
  Color? color,
});

// New: show overlay until a Future completes
LoadingOverlay.withFuture({
  required Future<void> future,
  required Widget child,
  Widget progressIndicator = const CircularProgressIndicator(),
  Color? color,
});

Update: See this article on Medium about async form validation

See the example application source for a complete sample app using the modal progress HUD. Included in the example is a method for using a form's validators while making async calls (see flutter/issues/9688 for details).

Issues and feedback

Please file issues to send feedback or report a bug. Thank you!

Categorias

Repositório-fonte

Projetos que usam este pacote