LRecyclerView
LRecyclerView copied to clipboard
设置为GridLayoutManager样式,并且设置分割线,同时添加头部,头部会出现分割线
mRecyclerView.addItemDecoration(divider2); mRecyclerView.setLayoutManager(new GridLayoutManager(this,3)); 1、添加一个头部的时候 1)刚进入页面的时候是正常的 2)上拉的时候添加的头部与列表之间会出现和列表一样的分割线(下拉没有问题) 2、添加两个头部的时候 1)刚进入页面的时候是正常的 2)上拉的时候添加的头部与列表之间会出现和列表一样的分割线,两个头部之间也会出现分割线(下拉没有问题) 您要是有空的时候可以测试一下,给我个回复,谢谢
代码如下: int spacing = getResources().getDimensionPixelSize(R.dimen.dp_4); mRecyclerView.addItemDecoration(SpacesItemDecoration.newInstance(spacing, spacing, manager.getSpanCount(), Color.GRAY)); 或者 //根据需要选择使用GridItemDecoration还是SpacesItemDecoration GridItemDecoration divider = new GridItemDecoration.Builder(this) .setHorizontal(R.dimen.default_divider_padding) .setVertical(R.dimen.default_divider_padding) .setColorResource(R.color.split) .build(); //mRecyclerView.addItemDecoration(divider);
以上代码详见demo中的EndlessGridLayoutActivity类。
另外需要注意:
//setLayoutManager must before setAdapter GridLayoutManager manager = new GridLayoutManager(this, 2); mRecyclerView.setLayoutManager(manager);
GridItemDecoration divider = new GridItemDecoration.Builder(this) .setHorizontal(R.dimen.default_divider_padding) .setVertical(R.dimen.default_divider_padding) .setColorResource(R.color.split) .build(); //mRecyclerView.addItemDecoration(divider); 这种方式是有分割线的
这种是是没有问题的 int spacing = getResources().getDimensionPixelSize(R.dimen.dp_4); mRecyclerView.addItemDecoration(SpacesItemDecoration.newInstance(spacing, spacing, manager.getSpanCount(), Color.GRAY));
我也是刚发现的
GridItemDecoration SpacesItemDecoration这两个都可以的!如有问题及时反馈!