我在我的flutter代码中使用Transform小部件来旋转屏幕
Offset _offset = Offset.zero;
return new Transform(
transform: Matrix4.identity()
..setEntry(3, 2, 0.001)
..rotateX(0.01 * _offset.dy)
..rotateY(-0.01 * _offset.dx)
..rotateZ(- 0.01 * _offset.),
alignment: FractionalOffset.center,
child: new Scaffold(
appBar: AppBar(
title: Text("The 3D Matrix"),
),
body: GestureDetector(
onPanUpdate: (details) => setState(() => _offset += details.delta),
onDoubleTap: () => setState(() => _offset = Offset.zero),
child: Content())
),);
现在我想要的是以一定的速度沿着z轴旋转小部件,并在几秒钟后将其速度减慢到零 .
可能是我需要使用动画控制器 . 我们怎样才能实现这种状态?
现在我实现了这么多:
1 回答
只需在页面小部件中添加
AnimationController
即可 . 然后将Transform
包装成AnimatedBuilder
当您需要启动动画时,请调用
animationController.forward()
.