withWidgetInBetween method

List<Widget> withWidgetInBetween(
  1. Widget widget
)

withWidgetInBetween Returns a new list with the given widget inserted between each element of the original list.

The widget parameter specifies the widget to insert between each item.

If the list is empty, an empty list is returned.

Example:

List<Widget> widgets = [Widget1(), Widget2(), Widget3()];
List<Widget> separatedWidgets = widgets.withWidgetInBetween(SizedBox(width: 8));

Implementation

List<Widget> withWidgetInBetween(Widget widget) {
  final separatedList = <Widget>[];

  for (int i = 0; i < length; i++) {
    separatedList.add(this[i]);
    ifNotLast(i) ? separatedList.add(widget) : null;
  }
  return separatedList;
}