【发布时间】:2020-08-22 16:31:44
【问题描述】:
有什么方法可以为小部件的旋转设置动画?我试过RotatedBox,但没用。
【问题讨论】:
标签: flutter dart flutter-animation
有什么方法可以为小部件的旋转设置动画?我试过RotatedBox,但没用。
【问题讨论】:
标签: flutter dart flutter-animation
使用AnimatedBuilder
AnimatedBuilder(
animation: _animation, // pass AnimationController to it
child: YourContainer(),
builder: (_, child) {
return Transform.rotate(
angle: _animation.value * play_around_with_values,
child: child,
);
},
)
截图:
完整代码:
class _MainPageState extends State<MainPage> with SingleTickerProviderStateMixin {
AnimationController _controller;
@override
void initState() {
super.initState();
_controller = AnimationController(vsync: this, duration: Duration(seconds: 2))..repeat();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(),
body: Center(
child: AnimatedBuilder(
animation: _controller,
builder: (_, child) {
return Transform.rotate(
angle: _controller.value * 2 * math.pi,
child: child,
);
},
child: FlutterLogo(size: 200),
),
),
);
}
}
【讨论】: