flutter - 从另一个屏幕导航时动态设置页面控制器的初始页面
问题描述
我有一个列表视图构建器,其中 Image.network 包装在 Inkwell 中作为其子级。我想导航到另一个页面,该页面由单击图像的页面视图构建器组成。我已经在构造函数中传递了列表视图构建器的索引。现在我想根据我在构造函数中传递的列表视图的索引来动态设置页面视图构建器的初始页面的值。我尝试将 PageController 中的初始页面设置为 widget.index 但抛出错误只能分配静态值。我还尝试了 pagecontroller.jumptoPage(widget.index) ,它会引发异常 Scroll controller 未附加到任何滚动视图。我该如何解决这个问题?
解决方案
页面控制器必须在initState()
而不是 State 类上定义,因为在初始化程序中只能访问静态成员。
例如。
void initState(){
pageController=PageController(initialPage:widget.index)
}
推荐阅读
- java - 如何禁用 JavaFX 中的最大化选项?
- scala - Spark Scala 中的动态映射语句
- java - FOP 2.3:fo:external-graphic 的问题
- angular - 未调用 canDeActivate 函数
- html - 为什么 YouTube Player API 显示“此视频不可用”。播放某些视频时?
- c++ - 可以在光线追踪器上查看我的汽车模型
- php - Laravel 5.4:VerifyCsrfToken.php 第 68 行中的 TokenMismatchException
- visual-studio-code - Visual Studio Code - 在搜索结果中包含上下文
- visual-studio-code - Visual Studio Code:使用多个任务运行 preLaunchTask
- javascript - Javascript循环遍历变量