我为容器创建了一个向前和向后旋转的动画,我希望反向动画比正向动画长,我该怎么办?
import 'dart:math'as math;
import 'package:flutter/material.dart';
class AnimationPage extends StatefulWidget {
@override
_AnimationPageState createState() => _AnimationPageState();
}
class _AnimationPageState extends State<AnimationPage>
with TickerProviderStateMixin {
AnimationController animController;
Animation<double> animation;
@override
void initState() {
// TODO: implement initState
super.initState();
animController =
AnimationController(duration: Duration(seconds: 5), vsync: this);
animation= Tween<double>(
begin: 0, end: 2* math.pi,
).animate(animController)
..addListener((){
setState((){});
})
..addStatusListener((status) {
if(status == AnimationStatus.completed){
animController.reverse();
} else if(status == AnimationStatus.dismissed){
animController.forward();
}
});
animController.forward();
最佳答案
只需添加一个 reverseDuration
AnimationController
的参数喜欢:
animController = AnimationController(
duration: Duration(seconds: 5),
reverseDuration: Duration(seconds: 8),
vsync: this,
);
关于flutter - 如何在 Flutter 中反转具有不同持续时间的动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62263790/