项目首页有个分类,UI设计给的是八种分类,每排四个,刚好两排;但是产品说客户只有六种分类,这个需要改。因此,UI设计建议说,那就做成两屏,这页显示四个,滑动到另外一页显示两个。因此以前写的效果不能用了,只好重新写了;记得美团的首页也有这样的效果,想着在网上搜一个就不用造轮子了,但是没有发现中意的,因此决定自己造一个轮子。
说是造轮子,也只是把布局放在一个View中,懒省事继承了FrameLayout,没有测量子部局和摆放子部局,使用的时候还是多有不便。
主要摆放了一个ViewPager和一个LinearLayout,直接上代码:
private void initClassify() {
//总的页数=总数/每页数量,并取整
mPageCount = (int) Math.ceil(mList.size() * 1.0 / mPageSize);
mPagerList = new SparseArray<>(mPageCount);
for (int i = 0; i < mPageCount; i++) {
// 每个页面都是inflate出一个新实例
GridView gridView = new GridView(getContext());
gridView.setNumColumns(mColumnSize);
ClassifyGridAdapter gridAdapter = new ClassifyGridAdapter(getContext(), mList, i, mPageSize);