【问题标题】:How to keep checkbox state while browsing between navigation bar items如何在导航栏项目之间浏览时保持复选框状态
【发布时间】:2020-04-21 09:11:22
【问题描述】:

在 Flutter 中,我有一个底部导航栏,其中有 4 个不同的底部导航栏项目。在第 4 个菜单项中,我有一个复选框小部件。在导航栏中浏览项目时,我希望选中或未选中项目的情况仍然存在。例如,如果我取消选中此小部件,我希望它在浏览其他导航栏项目时保持“未选中”状态。我怎样才能做到这一点?我尝试使用复选框的关键参数,但失败了。

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    你应该使用AutomaticKeepAliveClientMixin 在您浏览项目时保持状态。用它扩展您的状态类并创建一个覆盖方法wannaKeepAlive并将其设置为true。这是一个使用AutomaticKeepAliveClientMixin的小部件示例。

    class Example extends StatefulWidget {
      @override
      _ExampleState createState() => _ExampleState();
    }
    
    class _ExampleState extends State<Example> with AutomaticKeepAliveClientMixin {
      @override
      Widget build(BuildContext context) {
        return Container(
    
        );
      }
    
      @override
      // TODO: implement wantKeepAlive
      bool get wantKeepAlive => true;
    }
    

    【讨论】:

    • 我刚刚尝试过,但没有成功。问题仍然存在。
    【解决方案2】:

    欢迎来到状态管理! Official guideline for state management from Flutter team.

    我建议阅读从introduction to state management 开始的所有内容。

    【讨论】:

      猜你喜欢
      • 2015-10-22
      • 2016-11-26
      • 1970-01-01
      • 2015-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-07
      相关资源
      最近更新 更多