Я хочу, чтобы виджет счетчика показывал onTap
из дома widget
. Кроме того, запускайте animation
с начала при каждом нажатии.
Виджет счетчика
class Counter extends StatefulWidget {
@override
_CounterState createState() => _CounterState();
}
class _CounterState extends State<Counter> with SingleTickerProviderStateMixin {
AnimationController animationController;
Animation<double> animation;
@override
void initState() {
super.initState();
animationController = AnimationController(
vsync: this,
duration: Duration(milliseconds: 1000),
)
..addListener(() => setState(() {}));
animation = CurvedAnimation(
parent: animationController,
curve: Curves.elasticOut,
);
animationController.forward();
}
@override
Widget build(BuildContext context) {
return ScaleTransition(
child: Container(
height: 100,
width: 100,
color: Colors.blue,
),
scale: animation,
);
}
}
Домашний виджет
@override
Widget build(BuildContext context) {
return Scaffold(
body: Stack(
children: <Widget>[
Center(
child: Counter(),
),
GestureDetector(
onTap: () {},
child: Container(
width: double.infinity,
height: double.infinity,
),
),
],
));
}