Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Isolar a Reconstrução em Stateful Widget

Olá, Na aula de Stateful Widget e setState não seria possível isolar o Widget que contém a variável nivel em um em um Stateful Widget e manter os demais Widget como Stateless para não ficar muito pesado o processo de reconstrução da mudança da variável nivel?

Supondo que temos um Widget muito grande, com vários widgets dentro dele, e com tudo estático, mas que devido a apenas um Widget que precise lidar apenas com uma variável, não era para meio que isolar este Widget dinâmico e ai sim chamar ele dentro do Widget stateless?

2 respostas
solução!

Diego

Com certeza, dessa forma somente o widget que contém a variável "nivel" seria reconstruído quando houvesse uma alteração em seu estado, enquanto os outros widgets permaneceriam sem atualização.

Também é possível fazer "Optimization Rebuild" ao utilizar o mixin "with AutomaticKeepAliveClientMixin" o que irá manter o estado de um widget Stateful sem atualização enquanto outros widgets Stateful da mesma árvore são reconstruídos, reduzindo ainda mais o impacto. Você controla a atualização manualmente desse Widget pela condicional bool wantKeepAlive, por exemplo:

class _MyWidgetState extends State<MyWidget> with AutomaticKeepAliveClientMixin {

  @override
  bool get wantKeepAlive => true;
...

Valeu