Stack
: 取代线性布局 (译者语:和Android中的LinearLayout相似),Stack
允许子 widget 堆叠, 你可以使用 Positioned
来定位他们相对于Stack
的上下左右四条边的位置。Stacks是基于Web开发中的绝度定位(absolute positioning )布局模型设计的。
其中包括一个Navigator
, 它管理由字符串标识的Widget栈(即页面路由栈)。Navigator
可以让您的应用程序在页面之间的平滑的过渡。 是否使用MaterialApp
完全是可选的,但是使用它是一个很好的做法。
flutter 是根据动画库进行动画,将widget包装到Animation,相当于将view 处理成动画模式,
1、Animation
在Flutter中,您有一个AnimationController和一个Interpolator, 它是Animation类的扩展,例如CurvedAnimation。您将控制器和动画传递到AnimationWidget中,并告诉控制器启动动画。
控制器AnimationController=>处理动画 在初始化方法中初始化动画,已经动画的控制器
void initState()[
// TODO: implement initState
super.initState();
controller=new AnimationController(
duration:const Duration(microseconds: 2000),
vsync: this);
curvedAnimation=new CurvedAnimation(
parent: controller,
curve: Curves.easeIn);
]
2、点击事件中调用动画
floatingActionButton: new FloatingActionButton( tooltip: 'Fade', child: new Icon(Icons.brush), onPressed: (){ controller.forward(); } ),