效果:
按下缩小,松开恢复原状并变色
原理:
使用animation动画和三元运算
所有代码如下:
import 'package:flutter/material.dart';
import 'package:async/async.dart';
void main()=>runApp(MyApp());
class MyApp extends StatelessWidget{
@override
Widget build(BuildContext context) {
// TODO: implement build
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text("点赞动画"),
),
body: LikeAnimationWidget(),
),
);
}
}
class LikeAnimationWidget extends StatefulWidget{
@override
_LikeAnimationWidgetState createState() {
// TODO: implement createState
return _LikeAnimationWidgetState();
}
}
class _LikeAnimationWidgetState extends State<LikeAnimationWidget> with TickerProviderStateMixin{
AnimationController controller;
CurvedAnimation curve;
Animation animationSize;
double size=25.0;
@override