1
resposta

[Sugestão] MELHORANDO O DIRECIONAMENTO DA ROTA

Boa noite pessoal, eu n acho muito legal criar um novo para fazer o direcionamento da pagina, eu uso o "onEnd" do proprio AnimatedOpacity

 AnimatedOpacity(
                  curve: Curves.easeInOut,
                  opacity: imageOpacity,
                  duration: const Duration(milliseconds: 1500),
                  onEnd: () {
                    Navigator.pushReplacementNamed(context, '/auth/login');
                  },
                  child: Image.asset('assets/images/logo_splash_titulo.png')),
            ]),
1 resposta

Olá, Pedro!

Entendo que você prefere usar o "onEnd" do AnimatedOpacity para direcionar para outra página. No entanto, é importante notar que o "onEnd" é chamado quando a animação é concluída.

No caso do código que você compartilhou, a animação está relacionada à alteração da opacidade da imagem. Portanto, o "onEnd" será acionado quando a animação de opacidade estiver concluída.

No exemplo da aula, a navegação para a próxima tela é feita em um momento específico, após a animação de opacidade e um tempo adicional de 300 milissegundos. Isso é feito para garantir que a imagem esteja totalmente visível por um curto período antes de a navegação ocorrer.

Se você usar o "onEnd" para a navegação, a navegação ocorrerá imediatamente após a animação de opacidade, sem o tempo adicional. Isso pode fazer com que a navegação pareça um pouco brusca, pois a imagem estará apenas começando a se tornar totalmente visível quando a navegação ocorrer.

No entanto, se você preferir usar o "onEnd", o código ficaria assim:

AnimatedOpacity(
  curve: Curves.easeInOut,
  opacity: imageOpacity,
  duration: const Duration(milliseconds: 1500),
  onEnd: () {
    Navigator.pushReplacementNamed(context, '/auth/login');
  },
  child: Image.asset('assets/images/logo_splash_titulo.png'),
)

Isso irá navegar para a rota '/auth/login' quando a animação de opacidade estiver concluída.

Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.