Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在listview中修复Admob广告_Java_Android_Android Listview_Admob - Fatal编程技术网

Java 如何在listview中修复Admob广告

Java 如何在listview中修复Admob广告,java,android,android-listview,admob,Java,Android,Android Listview,Admob,我已经建立了一个android应用程序,这个应用程序是新闻应用程序,我在json视图中获取数据,现在我想在下面的每3个项目中添加一个广告,现在在尝试几天后成功显示广告。我的listview 5个数据,显示数据数量的广告显示在4个,现在我想显示所有数据数量和广告下面的每三个项目 public View getView(int i, View view, ViewGroup viewGroup) { if ((i + 1) / 3 == 1){ View ad_view

我已经建立了一个android应用程序,这个应用程序是新闻应用程序,我在json视图中获取数据,现在我想在下面的每3个项目中添加一个广告,现在在尝试几天后成功显示广告。我的listview 5个数据,显示数据数量的广告显示在4个,现在我想显示所有数据数量和广告下面的每三个项目

public View getView(int i, View view, ViewGroup viewGroup) {


    if ((i + 1) / 3 == 1){

        View ad_view=LayoutInflater.from(c).inflate(R.layout.ad_layout,viewGroup,false);

        AdView  mAdView = ad_view.findViewById(R.id.adView);
        AdRequest adRequest = new AdRequest.Builder().build();
        mAdView.loadAd(adRequest);

        return ad_view;


    } else {


        if (view == null) {
            view = LayoutInflater.from(c).inflate(R.layout.model_result, viewGroup, false);
        }


        TextView match_h = (TextView) view.findViewById(R.id.heding);

        User user = (User) this.getItem(i);

        final String mach_hed = user.getMathch_hed();
        match_h.setText(mach_hed);
       return view;
  }
}
不要用
(i+1)/3==1)
试试
(i+1)%4==0)
If将每4次播放一次广告。这意味着,在每3个项目之后,将显示一个广告。

而不是
(i+1)/3==1)
尝试
(i+1)%4==0)

If将每4次播放一次广告。这意味着,每3个项目后,将显示一个广告。

oky正在工作。。。。。。。。。。。但是我的应用程序显示5个数据现在添加此代码仅显示4个数据和一个广告,我想显示所有数据和广告删除
User User=(User)this.getItem(i)
try
User=(User)this.getItem(i-(int)(i+1)/4)因为您添加了一个要填充的列表,但试图显示该列表实际包含的更多项。但是适配器只为您有多少列表项生成视图。您可以将一些额外的虚拟项添加到列表中,以避免此问题。。。。。。。。。。。但是我的应用程序显示5个数据现在添加此代码仅显示4个数据和一个广告,我想显示所有数据和广告删除
User User=(User)this.getItem(i)
try
User=(User)this.getItem(i-(int)(i+1)/4)因为您添加了一个要填充的列表,但试图显示该列表实际包含的更多项。但是适配器只为您有多少列表项生成视图。您可以向列表中添加一些额外的虚拟项来避免这种情况