如何为 SlideTransition 设置一次动画(Flutter)?

问题描述 投票:0回答:0

有必要执行物体的移动和停止

导入'package:flutter/material.dart';

void main() => runApp(const MyApp());

类 MyApp 扩展 StatelessWidget { const MyApp({super.key});

static const String _title = 'Flutter 代码示例';

@override

小部件构建(BuildContext 上下文){ 返回 MaterialApp( 标题:_标题, 家:脚手架( appBar: AppBar(title: const Text(_title)), 正文:常量中心( 孩子:MyStatefulWidget() ), ), ); } }

类 MyStatefulWidget 扩展 StatefulWidget { const MyStatefulWidget({super.key});

@override

State createState() => _MyStatefulWidgetState(); }

类 _MyStatefulWidgetState 扩展状态 与 SingleTickerProviderStateMixin { 后期最终 AnimationController _controller = AnimationController( 持续时间:常量持续时间(毫秒:100), vsync:这个,

)..repeat(reverse: true);

最后的动画 _offsetAnimation = Tween( 开始:Offset.zero, 结束:const Offset(1.0, 0.0), ).animate(曲线动画( 父母:_controller, 曲线:Curves.linear, ));

@override

无效处置(){ _controller.dispose(); _controller.value = 0.5; super.dispose(); }

@override

小部件构建(BuildContext 上下文){ 返回 SlideTransition( 位置:_offsetAnimation, transformHitTests:假, 孩子:常量填充( 填充:EdgeInsets.all(0.0), 孩子:图标(Icons.add), ), ); } }

flutter flutter-animation
© www.soinside.com 2019 - 2024. All rights reserved.