Start Debugging

Tag: flutter

155 posts · Página1de16

Migre um app Flutter de Color.withOpacity para Color.withValues (Flutter 3.27+)
Substitua os membros obsoletos Color.withOpacity, opacity, value, red, green, blue e alpha por withValues, .a/.r/.g/.b e toARGB32. O que o dart fix reescreve para você, os quatro getters que ele deixa para trás, por que asserções de cor exata e buscas em Map<Color, T> quebram após a troca, e como withOpacity descarta silenciosamente o Display P3. Medido no Flutter 3.44.8 com Dart 3.12.2.
Migre um app Flutter de WidgetsBindingObserver.didChangeAppLifecycleState para AppLifecycleListener (Flutter 3.13+)
Substitua o código de ciclo de vida feito à mão com WidgetsBindingObserver por AppLifecycleListener: o mapeamento dos callbacks, a máquina de estados que ele impõe, o novo estado hidden que quebra switches exaustivos, as solicitações de saída no desktop e o teste que de repente falha numa assertion. Testado no Flutter 3.44.8 com Dart 3.12.2.
2026-10-19 flutterdarttheming
Como definir design tokens personalizados com ThemeExtension e animá-los entre os temas claro e escuro no Flutter
Herde de ThemeExtension, registre uma instância por ThemeData pela lista extensions, leia com Theme.of(context).extension<T>() e escreva um lerp de verdade para que o AnimatedTheme do MaterialApp interpole seus tokens durante a troca entre claro e escuro. Cobre cores, raios, sombras, estilos de texto e booleanos, o crash por extensão ausente, a armadilha do copyWith que descarta todas as outras extensões e por que você precisa de == e hashCode, tudo verificado com testes de widget no Flutter 3.44.8.
Como fazer o AnimatedSwitcher animar quando o tipo do widget filho não muda no Flutter
O AnimatedSwitcher só faz a transição quando Widget.canUpdate indica que o novo filho é outro widget, então de Text para Text sem key ele apenas atualiza no lugar. Aqui estão a correção de uma linha, onde a key precisa ficar, por que UniqueKey é uma armadilha, o bug de direção do slide causado por um transitionBuilder estático e o salto de layout do Stack padrão, tudo verificado com testes de widget no Flutter 3.44.8.
2026-10-19 flutterdartandroid
Como restaurar o estado da UI após a morte do processo no Android em Flutter com RestorationMixin
O Android encerra apps Flutter em segundo plano para recuperar memória, e quando o usuário volta todo StatefulWidget começa do zero. Veja como ativar a restauração com restorationScopeId, RestorationMixin e propriedades Restorable, restaurar campos de texto, posições de rolagem e rotas empilhadas, escrever um RestorableValue personalizado e testar tudo com restartAndRestore e adb, verificado no Flutter 3.44.8 e em um emulador Android 16.
Próximo