Flutter中可折叠列表小部件有哪些选项?

时间:2018-03-17 13:23:24

标签: dart flutter flutter-layout

我需要在我的项目中根据主题让一些列表崩溃,并且我想知道我是否需要从零实现它,或者更确切地说使用flutter中的组件。该组件是否存在?

提前致谢:)

1 个答案:

答案 0 :(得分:11)

Flutter Gallery有两个可能与您的手风琴列表相关的示例。

Expansion Panel Demo& Two-level List Demo

扩展面板演示可能就是您想要的。如果是,请查看演示如何利用ExpansionPanel并使用headerBuilderbody。您可以扩展它以使标题和正文尽可能复杂。 Gallery演示添加了DemoItem辅助类。您可以使用此模式或提出自己的设计。

这是一个代码段,通过传递回调和ExpansionPanelList的列表来显示使用DemoItem的演示:

        child: new ExpansionPanelList(
          expansionCallback: (int index, bool isExpanded) {
            setState(() {
              _demoItems[index].isExpanded = !isExpanded;
            });
          },
          children: _demoItems.map((DemoItem<dynamic> item) {
            return new ExpansionPanel(
              isExpanded: item.isExpanded,
              headerBuilder: item.headerBuilder,
              body: item.build()
            );
          }).toList()
        ),

enter image description here

enter image description here