PageCotroller错误ScrollController附加到多个滚动视图



我有一个这样的类:

class MyController {
static PageController globalController = PageController(initialPage: 0);
void diispose() {
globalController.dispose();
}
}

我想在两个不同的位置使用这个PageController来修改PageView然而,使用MyController.globalController.jumpToPage(1);后,我得到了这个错误:

ScrollController attached to multiple scroll views.
'package:flutter/src/widgets/scroll_controller.dart':
package:flutter/…/widgets/scroll_controller.dart:1
Failed assertion: line 108 pos 12: '_positions.length == 1'

我认为您不能为两个滚动视图使用相同的PageController,但您可以为每个滚动创建一个,并为所有滚动跳转到页面创建一个方法,如下面的示例:

class MyController {
static PageController globalControllerOne = PageController(initialPage: 0);
static PageController globalControllerTwo = PageController(initialPage: 0);
void jumpToPage(int page) {
globalControllerOne.jumpToPage(page);
globalControllerTwo.jumpToPage(page);
}
void dispose() {
globalController.dispose();
}
}

最新更新