【问题标题】:How can the subpages of pageview monitor page switching in flutter?页面浏览量的子页面如何监控flutter中的页面切换?
【发布时间】:2021-04-07 13:36:52
【问题描述】:
PageView.builder(
      itemBuilder: (ctx, index) => pages[index],
      itemCount: pages.length,
      controller: _pageController,
      physics: NeverScrollableScrollPhysics(),
      onPageChanged: (index) {
        setState(() {
          _selectedIndex = index;
        });
      },
    )

当 pageChanged 时,我希望 item 可以知道它被显示或隐藏,所以我可以做点什么 也许我需要一个听众?但我不知道如何编码,请有人帮助我!

【问题讨论】:

  • 在构造函数中使用AnimatedBuilder并传递animation: _pageController
  • 我忘了补充说你应该在AnimatedBuilder里面使用itemBuilder
  • 谢谢,你能详细描述一下吗?
  • @zerongjiang 你能准确描述一下你想用代码做什么吗?

标签: flutter listener flutter-pageview


【解决方案1】:

这不过是一个标准的状态传递问题。在构建此 PageView(例如 MyHomePage)的小部件中,您将 _selectedIndex 作为您的状态。另一方面,您希望将此状态传递到page[index] 内的一些小部件中。因此,您想将状态传递给孩子

确实有很多方法可以做到这一点。尝试搜索状态管理。你可以使用像 Mobx 这样沉重(但很漂亮)的库。你也可以使用轻量级的东西,比如 InheritedWidget。

【讨论】:

  • @zerongjiang 不客气 :) 如果我的回答对你有帮助,你可以点击这个回答左边的“接受这个回答”
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多