前言:最近项目中需实现多屏滚动加gridview的效果,网上也查看了诸多文章,零零总总,现在把自己的心得与实现效果进行分享:
private List<View> viewPagerList;//GridView作为一个View对象添加到ViewPager集合中
private List<DevicesInfoBean.DevicesBean> listDatas;//总的数据源
private int totalPage; //总的页数
private int mPageSize = 4; //每页显示的最大的数量
//总的页数向上取整
totalPage = (int) Math.ceil(devices.size() * 1.0 / mPageSize);
viewPagerList = new ArrayList<>();
if (devices != null && devices.size() > 0) {
//每个页面都是inflate出一个新实例
for (int i = 0; i < totalPage; i++) {
GridView gv_gridview = (GridView) View.inflate(context, R.layout.item_gridview, null);
gv_gridview.setAdapter(new MyGridviewAdapter(context,devices,i,mPageSize));
viewPagerList.add(gv_gridview);
}
mViewpager.setAdapter(new MyViewPagerAdapter(viewPagerList));
}