Ola
Parece que você está tendo problemas com a instância de setState no Flutter. Vou ajudá-lo a entender o que está errado em seu código e como corrigi-lo.
Primeiro, em sua classe _MyAppState, você declarou uma variável opacidade como um booleano, mas não a declarou como um membro de estado usando widget.. Para acessar e modificar essa variável em um StatefulWidget, você deve usá-la como widget.opacidade. Portanto, você deve fazer as seguintes alterações:
class _MyAppState extends State<MyApp> {
@override
Widget build(BuildContext context) {
return MaterialApp(
// ...
body: AnimatedOpacity(
opacity: widget.opacidade ? 1.0 : 0.0,
duration: Duration(milliseconds: 1000),
child: ListView(
// ...
),
),
floatingActionButton: FloatingActionButton(
onPressed: () {
setState(() {
widget.opacidade = !widget.opacidade;
});
},
),
);
}
}
Para acessar propriedades do estado no Flutter, você deve usar widget. para se referir a essas propriedades.
E Observe que eu corrigi o valor opacity em AnimatedOpacity para usar 1.0 e 0.0 em vez de 1 e 0 para garantir que sejam valores de ponto flutuante.
Com essas alterações, seu código deve funcionar corretamente. Lembra de ajustar outras partes do código conforme necessário e adicionar a lógica apropriada ao lidar com a alteração da opacidade.