是否有可能在没有使用itembuilder的情况下分隔Listview。

问题描述 投票:1回答:1

我想拥有一个Listview.seperated,在这里我可以将元素定义为子元素,而不是使用itembuilder。我在下面发布的代码中找到了一种方法,可以让我像子数组一样进行插入。但是这种方式我必须手动更改项目数。还有其他方法可以不必将数组存储在字段中的某个位置吗?

child: ListView.separated
(
  itemCount: 3,
  separatorBuilder: (BuildContext context, int index) => Divider(height: 1.0), 
  itemBuilder: (BuildContext context, int index)
  {
    [
      ListTile(
        title: Text('Group Name'),
      ),
      ListTile(
        title: Text('Leave Group'),
      ),
      ListTile(
        title: Text('Invite Member'),
      )
    ][index];
  }
)
flutter
1个回答
1
投票

是否有可能使用Listview.seperated而不必使用itembuilder?

答案为,因为:

ListView.separated constructor
ListView.separated(
{Key key,
Axis scrollDirection: Axis.vertical,
bool reverse: false,
ScrollController controller,
bool primary,
ScrollPhysics physics,
bool shrinkWrap: false,
EdgeInsetsGeometry padding,
@required IndexedWidgetBuilder itemBuilder,
@required IndexedWidgetBuilder separatorBuilder,
@required int itemCount,
bool addAutomaticKeepAlives: true,
bool addRepaintBoundaries: true,
bool addSemanticIndexes: true,
double cacheExtent}
)

这是您感兴趣的部分:

@required IndexedWidgetBuilder itemBuilder,
@required IndexedWidgetBuilder separatorBuilder,
@required int itemCount,

https://api.flutter.dev/flutter/widgets/ListView/ListView.separated.html

© www.soinside.com 2019 - 2024. All rights reserved.