如何在 GridView.builder 内部的内容之间显示 AdMob 原生广告?

dja*_*ler 9 gridview admob dart flutter native-ads

我有一个壁纸应用程序,它在主屏幕中显示来自 Firestore 的图片,我正在使用flutter_native_admob包来显示本机,并且广告工作正常。

我已经尝试过使用staggered_grid_view包,但它没有用,每次我将 StaggeredGridTile 中的值从 1 更改为 2 以显示原生广告而不是网格时,包都会中断,即使我设置了一个数字以在 x 张图片后显示广告,它显示在错误的地方滚动。

我需要什么:

例子

class HomeScreen extends StatefulWidget {

  @override
  _HomeScreenState createState() => _HomeScreenState();
}

class _HomeScreenState extends State<HomeScreen> {

  final nativeAdmob = NativeAdmob();
  int counter = 0;
  double result;
  int num = 4;


  @override
  Widget build(BuildContext context) {

    Widget _buildGrid(int index){


      return Container(
        color: Colors.green,
        child: Center(
          child: Text("$index"),
        ),
      );

      /*

    // I need to show this widget between the content
    NativeAdmobBannerView(
      adUnitID: "ca-app-pub-3940256099942544/2247696110", // Test
      style: BannerStyle.light,
      showMedia: true,
    )

     */

    }

    return Scaffold(
      appBar: AppBar(
        title: Text('Grid with Native Ad'),
        centerTitle: true,
      ),
      body: Container(
        child: StaggeredGridView.countBuilder(
            crossAxisSpacing: 3.0,
            mainAxisSpacing: 3.0,
            itemCount: 20,
            itemBuilder: (context, index){

              return _buildGrid(index);

            },
          crossAxisCount: 2,
          staggeredTileBuilder: (int index){

              return StaggeredTile.count(
                  1,
                  1
              );
            },
          ),

        )
       );
  }

}
Run Code Online (Sandbox Code Playgroud)

小智 0

您应该考虑使用交错网格视图来实现此目的。您可以参考交错网格视图的链接

使用它并设置自定义交叉轴计数来实现您正在寻找的内容。