云南网站建设价格低,做网站 图片显示不出来,浏览网站模板,智慧团建电脑版登录在移动端开发中#xff0c;经常会有一些动画交互#xff0c;比如淡入淡出,效果如图#xff1a; 因为官方封装好了AnimatedOpacity Widget#xff0c;开箱即用#xff0c;所以我们用起来很方便#xff0c;代码量很少#xff0c;做少量配置即可#xff0c;所以#xff0…在移动端开发中经常会有一些动画交互比如淡入淡出,效果如图 因为官方封装好了AnimatedOpacity Widget开箱即用所以我们用起来很方便代码量很少做少量配置即可所以全部代码如下 import package:flutter/material.dart;class TabPage3 extends StatefulWidget {overridecreateState() new LogoFadeState();
}
class LogoFadeState extends StateTabPage3 {// 初始opacityLevel为1.0为可见状态为0.0时不可见double opacityLevel 1.0;_changeOpacity() {//调用setState 根据opacityLevel当前的值重绘ui// 当用户点击按钮时opacityLevel的值会1.00.01.00.0 ...切换// 所以AnimatedOpacity 会根据opacity传入的值(opacityLevel)进行重绘 WidgetsetState(() opacityLevel opacityLevel 0 ? 1.0 : 0.0);}overrideWidget build(BuildContext context) {return new Column(//一个Column布局主轴为垂直方向起点在上沿。mainAxisAlignment: MainAxisAlignment.spaceAround,//子组件在主轴上均匀分布在容器内两边留有一半的间隔空间。children: [new AnimatedOpacity(// 使用一个AnimatedOpacity Widgetopacity: opacityLevel,duration: new Duration(seconds: 1),//过渡时间1child:new Container(padding:const EdgeInsets.only(right:20.0,bottom:15.0,left:20.0),//内边距child:new Text(和React Native一样Flutter也提供响应式的视图Flutter采用不同的方法避免由JavaScript桥接器引起的性能问题即用名为Dart的程序语言来编译。Dart是用预编译的方式编译多个平台的原生代码这允许Flutter直接与平台通信而不需要通过执行上下文切换的JavaScript桥接器。编译为原生代码也可以加快应用程序的启动时间。实际上Flutter是唯一提供响应式视图而不需要JavaScript桥接器的移动SDK这就足以让Fluttter变得有趣而值得一试但Flutter还有一些革命性的东西即它是如何实现UI组件的) ,)),new RaisedButton(child:new Container(child: new Text(点我试试),) ,onPressed: _changeOpacity,//添加点击事件),],);}
}复制代码flutter官方给我们封装了很多很多常用的开箱即用的控件为开发带来了极大的便利。