我正在使用如下所示的微调器图标,但我不知道它为什么不旋转。它就像普通的图标一样工作。
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
class MyWidget extends StatelessWidget {
Widget build(BuildContext context) {
return new IconButton(
// Use the FontAwesomeIcons class for the IconData
icon: new Icon(FontAwesomeIcons.spinner),
onPressed: () { print("Pressed"); }
);
}
}
此时,此程序包仅提供图标,但这些图标不会自行旋转或动画。使用flutter的动画功能来旋转它。这是来自Brian Egan的示例小部件。
class Spinner extends StatefulWidget {
final IconData icon;
final Duration duration;
const Spinner({
Key key,
@required this.icon,
this.duration = const Duration(milliseconds: 1800),
}) : super(key: key);
@override
_SpinnerState createState() => _SpinnerState();
}
class _SpinnerState extends State<Spinner> with SingleTickerProviderStateMixin {
AnimationController _controller;
Widget _child;
@override
void initState() {
_controller = AnimationController(
vsync: this,
duration: Duration(milliseconds: 2000),
)..repeat();
_child = Icon(widget.icon);
super.initState();
}
@override
void dispose() {
_controller.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return RotationTransition(
turns: _controller,
child: _child,
);
}
}
用法
Spinner(
icon: FontAwesomeIcons.spinner,
)
关于github的相关问题
此时,font_awesome_flutter包仅提供图标,并且这些图标不会自行旋转或动画。 这就是为什么我使用了一个材料设计循环进度指示器,它显示了一个圆圈的进度
import 'package:flutter/material.dart';
class MyWidget extends StatelessWidget {
Widget build(BuildContext context) {
return new CircularProgressIndicator();
}
}
https://docs.flutter.io/flutter/material/CircularProgressIndicator/CircularProgressIndicator.html