🎬 Cap 14: Animações
🎯 Objetivo da Aula:
Entender o conceito de animações implícitas no Flutter usando AnimatedContainer.
🏢 O Cenário Prático (Seu Desafio): Quando o herói toma dano, a barra de vida deve encolher de forma suave (animada), e não de uma vez!
📖 Exemplo Passo a Passo
import 'package:flutter/material.dart';
class BarraVida extends StatefulWidget {
const BarraVida({super.key});
@override
State<BarraVida> createState() => _BarraVidaState();
}
class _BarraVidaState extends State<BarraVida> {
double _largura = 200.0;
@override
Widget build(BuildContext context) {
return Column(
children: [
AnimatedContainer(
duration: const Duration(seconds: 1),
width: _largura,
height: 20,
color: Colors.red,
),
ElevatedButton(
onPressed: () {
setState(() {
_largura = 50.0;
});
},
child: const Text('Tomar Dano'),
),
],
);
}
}