По сути, у меня есть кнопка, которую я сделал во Flare, и она должна сделать анимацию, тогда я нажимаю ее! Это работает хорошо, но анимация запускается каждый раз, когда я нажимаю в любом месте своего приложения, а не только на кнопку. Есть ли способ сделать анимацию только при нажатии в области кнопок? Я использую GestureDetector для обработки нажатий.
https://i.stack.imgur.com/ZBjmz.jpg
Мой код:
import 'package:flutter/material.dart';
import 'package:flare_flutter/flare_actor.dart';
import 'package:vibrate/vibrate.dart';
void main() => runApp(MaterialApp(
home: InvalidButton(),
));
class InvalidButton extends StatefulWidget {
@override
_InvalidButtonState createState() => _InvalidButtonState();
}
class _InvalidButtonState extends State<InvalidButton> {
var _type = FeedbackType.heavy;
final FlareControls controls = FlareControls();
void _playAnimation(){
controls.play('invalid');
}
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.pink[50],
body: Container(
child: GestureDetector(
onTap: () {
setState(() {
_playAnimation();
Vibrate.feedback(_type);
});
},
child: FlareActor(
'assets/invalid_button.flr',
animation: 'invalid',
alignment: Alignment.center,
fit: BoxFit.contain,
controller: controls,
),
),
),
);
}
}
Я новичок ie так будем рады любой помощи!