我一直在寻找这个答案,我没有找到任何好的解决方案,这将有助于我开始创建这个。这就是我想做的。就像我们在列表中有视图类型一样,我们可以使用这些视图类型在列表中的不同位置显示不同的布局,我也希望使用viewpager。我在viewpager中显示来自服务器的一些图像,因此用户可以滑动它们,但我想在每5个图像广告上向用户显示这些图像。我怎么能做到这一点?
这是我的viewpager适配器的外观:
private class JokesImagesAdapter extends FragmentPagerAdapter {
public JokesImagesAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
JokePageFragment fragment = new JokePageFragment();
fragment.setArguments(jokes.get(position).toBundle());
return fragment;
}
@Override
public int getCount() {
return jokes.size();
}
}
我想我可能需要再创建一个片段,并在此处调用广告实施。
答案 0 :(得分:0)
您希望在应用中展示哪种广告 - 插页式广告或原生广告?
如果您想在每5次滑动时只显示插页式广告,只需将OnPageChangeListener附加到ViewPager并计算滑动次数即可。
如果您想要展示原生广告,则必须创建一个新片段(如您所愿),该片段将展示广告。您必须在适配器的getItem()方法中计算并返回广告片段。处理此问题的另一种方法是使用一个片段,通知该片段是否显示广告视图或普通视图。
答案 1 :(得分:0)
我认为你应该稍微修改你的笑话模型,它可以接受对象而不仅仅是图像(和你的自定义参数),然后将对象转换为所需的数据类型,然后在填充笑话时,你应该添加广告对象每隔5个位置就可以完成工作。