基于Flutter怎么制作一个火箭发射动画
发表于:2025-11-14 作者:千家信息网编辑
千家信息网最后更新 2025年11月14日,本文小编为大家详细介绍"基于Flutter怎么制作一个火箭发射动画",内容详细,步骤清晰,细节处理妥当,希望这篇"基于Flutter怎么制作一个火箭发射动画"文章能帮助大家解决疑惑,下面跟着小编的思路
千家信息网最后更新 2025年11月14日基于Flutter怎么制作一个火箭发射动画
本文小编为大家详细介绍"基于Flutter怎么制作一个火箭发射动画",内容详细,步骤清晰,细节处理妥当,希望这篇"基于Flutter怎么制作一个火箭发射动画"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
AnimatedPositioned介绍
AnimatedPositioned组件的使用方式其实和 AnimatedContainer 类似。只是AnimatedPositioned是 Positioned 组件的替代。构造方法定义如下:
const AnimatedPositioned({ Key? key, required this.child, this.left, this.top, this.right, this.bottom, this.width, this.height, Curve curve = Curves.linear, required Duration duration, VoidCallback? onEnd, })前面的参数和 Positioned 一样,后面是动画控制参数,这些参数的定义和 AnimatedContainer 的是一样的:
curve:动画效果曲线;duration:动画时长;onEnd:动画结束后回调。
我们可以改变 left,top,width等参数来实现动画过渡的效果。比如我们的火箭发射,就是修改 bottom (飞行高度控制)和 width (尺寸大小控制)来实现的。
火箭发射动画实现
有了上面的两个分析,火箭发射动画就简单了!完整代码如下:
class RocketLaunch extends StatefulWidget { RocketLaunch({Key? key}) : super(key: key); @override _RocketLaunchState createState() => _RocketLaunchState();}class _RocketLaunchState extends State<RocketLaunch> { var rocketBottom = -80.0; var rocketWidth = 160.0; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('火箭发射'), brightness: Brightness.dark, backgroundColor: Colors.black, ), backgroundColor: Colors.black, body: Center( child: Stack( alignment: Alignment.bottomCenter, children: [ Image.asset( 'images/earth.jpeg', height: double.infinity, fit: BoxFit.fill, ), AnimatedPositioned( child: Image.asset( 'images/rocket.png', fit: BoxFit.fitWidth, ), bottom: rocketBottom, width: rocketWidth, duration: Duration(seconds: 5), curve: Curves.easeInCubic, ), ], ), ), floatingActionButton: FloatingActionButton( child: Text( '发射', style: TextStyle( color: Colors.white, ), textAlign: TextAlign.center, ), onPressed: () { setState(() { rocketBottom = MediaQuery.of(context).size.height; rocketWidth = 40.0; }); }, ), ); }}其中一开始设置 bottom 为负值,是为了隐藏火箭的焰火,这样会更有感觉一些。然后就是在点击发射按钮的时候,通过 setState 更改底部距离和火箭尺寸就可以搞定了。
读到这里,这篇"基于Flutter怎么制作一个火箭发射动画"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。
动画
火箭
发射
参数
制作
文章
控制
内容
就是
尺寸
效果
组件
妥当
两个
代码
只是
大小
底部
思路
感觉
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
江岸区信息网络安全
来电话短信就没有数据库
杭州衡泰软件开发有限公司
金华学软件开发工程师
筑牢网络安全新闻
华为网络安全官接受采访
多串口服务器 带io接口
怎样制作一个家庭服务器
数据库自动备份tp
服务器创建管理员
数据库怎么自动登录密码
2k21 连接服务器
网络安全升旗仪式主持稿
福州北大青鸟软件开发培训班
2020网络安全为人民视频
宁波久游网络技术有限公司
黄金台服务器09多吗
网络安全小技巧大揭秘
数据库服务器存储
江西信息软件开发商家
自编选号数据库
网络安全执法管理有什么大学
广州市羲和互联网科技
后端开发和软件开发一样吗
希沃服务器无响应
java数据库驱动程序
医疗单位网络安全的方案
连云港软件开发公司哪家好
浪潮 服务器远程管理口不通
1u服务器能够支持多少用户点击