flutter 如何在列表视图中自动插入广告?

monwx1rj  于 2023-04-22  发布在  Flutter
关注(0)|答案(1)|浏览(124)

我想每2个类别插入一个add。目前,我的ListView是由类别上的Map提供的。这里有一个紧凑的方法来转换代码,以同样的方式添加AdWidget()吗?

ListView(
  physics: const BouncingScrollPhysics(),
  children: widget.superCategory.allCategories
    .map((category) =>
       ClassifiedAdCategoryGalleryStrip(category: category))
       .toList(),
)

[更新] AdWidget()只是一个广告widget,你可以用任何widget替换,比如Text(“ad widget here”);
现在我的代码如下:

final List<Widget> children = widget.superCategory.allCategories
        .map((category) => ClassifiedAdCategoryGalleryStrip(category: category))
        .toList();

    for (int i = 0; i < children.length; i += 2) {
      if (i == 0) continue;
      children.insert(i, Text("AdWidget"))
    }
    return Scaffold(
        appBar: AppBar(
            title:
                Text(i18n_category_gallery.i18n.fill([widget.superCategory]))),
        body: ListView(
          physics: const BouncingScrollPhysics(),
          children: children,
        ));
enxuqcxy

enxuqcxy1#

尝试使用ListView.separated()。此小部件提供了您需要的东西。
您也可以阅读此article,以更好地了解您可以使用此小部件做什么

相关问题