Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev2.0.1

focus_detector

Detecta quando seu widget aparece ou desaparece da tela.

AndroidiOSWebmacOSWindowsLinux
Downloads em 30 dias
36,7 mil
Curtidas
362
Pontos Pub
130

Instalar pacote

flutter pub add focus_detector

Visão geral do pacote

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

FocusDetector é um pacote Flutter que detecta quando um widget ganha ou perde foco, permitindo que os desenvolvedores respondam a mudanças de visibilidade em tempo real. Ele fornece callbacks quando um widget aparece na tela (foco adquirido) ou desaparece (foco perdido), tornando-o ideal para animações, rastreamento de interações do usuário ou gerenciamento de estado com base na visibilidade. O pacote funciona em todas as principais plataformas, incluindo Android, iOS, Web, macOS, Windows e Linux, garantindo comportamento consistente independentemente do ambiente-alvo. Integra-se perfeitamente em aplicativos Flutter existentes com configuração mínima.

Casos de uso

  • Visibilidade do widget de rastreamento para análise
  • Disparar animações na aparência
  • Gerenciando estado com base no status de foco
  • Otimizando o desempenho pausando widgets inativos
  • Implementando interfaces responsivas que reagem às mudanças de foco

Principais recursos

  • Detecção de foco em tempo real
  • Compatibilidade multiplataforma
  • API simples baseada em retorno de chamada
  • Leve e fácil de integrar
  • Suporta eventos de ganho e perda de foco

Indicado para

  • Desenvolvedores de interfaces interativas
  • Aplicativos que exigem lógica orientada à visibilidade
  • Animações acionadas pelo foco do usuário
  • Aplicações sensíveis ao desempenho
  • Widgets com necessidade de conscientização de ciclo de vida

Considerações

  • Requer estrutura correta da árvore de widgets
  • Pode não funcionar como esperado com layouts aninhados complexos
  • Não adequado para widgets não interativos
  • Limitado a eventos relacionados ao foco apenas
  • Melhor usado com widgets ou controladores com estado

README original

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

Focus Detector Logo

Pub.dev Badge GitHub Build Badge Gitter Badge Effective Dart Badge MIT License Badge Flutter Platform Badge

Focus Detector

Get notified every time your widget appears or disappears from the screen.

Similar to onResume()/onPause() on Android and viewDidAppear()/viewDidDisappear() on iOS.

Focus Detector fires callbacks for you whenever something happens to take or give your widget focus. Such an event might be, for instance, the user:

  • Navigating to/from another screen;
  • Turning the device’s screen on/off while your widget is visible;
  • Switching to/from another app while your widget is visible;
  • Scrolling your widget in/out the screen;

Usage

@override
Widget build(BuildContext context) =>
    FocusDetector(
      onFocusLost: () {
        logger.i(
          'Focus Lost.'
          '\nTriggered when either [onVisibilityLost] or [onForegroundLost] '
          'is called.'
          '\nEquivalent to onPause() on Android or viewDidDisappear() on iOS.',
        );
      },
      onFocusGained: () {
        logger.i(
          'Focus Gained.'
          '\nTriggered when either [onVisibilityGained] or [onForegroundGained] '
          'is called.'
          '\nEquivalent to onResume() on Android or viewDidAppear() on iOS.',
        );
      },
      onVisibilityLost: () {
        logger.i(
          'Visibility Lost.'
          '\nIt means the widget is no longer visible within your app.',
        );
      },
      onVisibilityGained: () {
        logger.i(
          'Visibility Gained.'
          '\nIt means the widget is now visible within your app.',
        );
      },
      onForegroundLost: () {
        logger.i(
          'Foreground Lost.'
          '\nIt means, for example, that the user sent your app to the background by opening '
          'another app or turned off the device\'s screen while your '
          'widget was visible.',
        );
      },
      onForegroundGained: () {
        logger.i(
          'Foreground Gained.'
          '\nIt means, for example, that the user switched back to your app or turned the '
          'device\'s screen back on while your widget was visible.',
        );
      },
      child: Container(),
    );

Usage Scenarios

  • Turn on and off resource-consuming features, such as camera, location or bluetooth;
  • Sync your data with a remote API or local database;
  • Pause and resume video/audio playback or streaming;

Categorias

Dependências

Lista de dependências 1 itens

Repositório-fonte

Projetos que usam este pacote