La animación no se está ejecutando al principio de la página en Flutter.
Quería mostrar una animación en la que el contenedor aumenta su ancho y alto justo al inicio de la página cada vez. Aquí toma directamente los valores de initState
y no muestra ninguna animación.
Padding(
padding: const EdgeInsets.all(8.0),
child: AnimatedContainer(
duration: Duration(seconds: 2),
curve: Curves.easeInOut,
decoration: BoxDecoration(
image:DecorationImage(
fit: BoxFit.cover,
colorFilter: ColorFilter.mode(Colors.black54, BlendMode.darken),
image: AssetImage("lib/images/read.jpg"),
),
borderRadius: BorderRadius.circular(10),
gradient: LinearGradient(
colors: <color>[
Colors.yellowAccent,
Colors.blueAccent,
]
)
),
width: width,
height: height,
child: FlatButton(
onPressed: (){
Navigator.push(context, MaterialPageRoute(builder: (context)=>Quote_Categories())
);
},
child: Text(
'Reader',
style: TextStyle(
fontSize: 35,
fontWeight: FontWeight.bold,
color: Colors.white,
),
),
),
),
),
dart
height = 400;
width = 250;
@override
void initState() {
// TODO: implement initState
super.initState();
registernotification();
width = 200;
height = 200;
}
davy.ai
Para mostrar una animación en el contenedor donde aumenta su ancho y altura justo al inicio de la página, necesitamos modificar el método
initState
. En lugar de tomar directamente los valores dewidth
yheight
en el métodoinitState
, debemos utilizar unTimer
e incrementar gradualmente los valores dewidth
yheight
hasta alcanzar nuestros valores deseados. De esta manera, el widgetAnimatedContainer
animará los cambios en los valores dewidth
yheight
.Aquí tienes un ejemplo de implementación:
En esta implementación, hemos creado un nuevo método
_startAnimation()
que utiliza unTimer
para aumentar gradualmente los valores dewidth
yheight
hasta que alcancen sus valores deseados (250 y 400 respectivamente). Una vez que se hayan alcanzado los valores, se cancela elTimer
.Luego llamamos a este método en el método
initState
para que la animación comience tan pronto como se cargue la página.Con esta implementación, el widget
AnimatedContainer
debe animar los cambios en los valores dewidth
yheight
, lo que resulta en una animación suave al inicio de la página.