我正在尝试创建具有自动滑动功能的旋转木马。在我遇到“用PageView生成PageController.page之前无法访问它”的问题
我可以参考https://github.com/jlouage/flutter-carousel-pro/issues/21
来解决它但是不幸的是,旋转木马无法自动滑动。请帮助我。
在carousel_pro.dart中,我进行了如下更改:
final _controller = new PageController();
@override
void initState() {
super.initState();
if (_controller.hasClients) {
if (widget.autoplay) {
new Timer.periodic(widget.autoplayDuration, (_) {
if (_controller.page.round() == widget.images.length-1) {
_controller.animateToPage(
0,
duration: widget.animationDuration,
curve: widget.animationCurve,
);
} else {
_controller.nextPage(
duration: widget.animationDuration,
curve: widget.animationCurve);
}
});
}
}
}
答案 0 :(得分:0)
您必须检查小部件是否有图像。...
if (widget.images != null && widget.images.isNotEmpty) {
if (widget.autoplay) {
Timer.periodic(widget.autoplayDuration, (_) {
if (_controller.hasClients) {
if (_controller.page.round() == widget.images.length - 1) {
_controller.animateToPage(
0,
duration: widget.animationDuration,
curve: widget.animationCurve,
);
} else {
_controller.nextPage(
duration: widget.animationDuration,
curve: widget.animationCurve);
}
}
});
}
}
此外,您还必须重新安装该应用程序。 它对我有用!!!