1. 指定位置的item只要可见就停止滚动
RecyclerView.scrollToPosition(pos);
复制代码
2. 滚动到指定位置的item,并将item置顶
((LinearLayoutManager) RecyclerView.getLayoutManager()).scrollToPositionWithOffset(pos, 0);
复制代码
3. 使用GridLayoutManager实现多样式布局
recyclerView实现GridView效果:
GridLayoutManager第一次参数是上下文,第二个参数是一行显示几列的参数
GridLayoutManager layoutManage = new GridLayoutManager(getContext(), 2);
recycerView.setLayoutManager(layoutManage);复制代码
GridLayoutManager里边有个setSpanSizeLookup方法,
final GridLayoutManager.SpanSizeLookup lookup = gridManager.getSpanSizeLookup();
gridManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
return getItemViewType(position) == GameBean.TYPE_BANNER
? gridManager.getSpanCount() : (lookup != null ? lookup.getSpanSize(position) : 1);
}
});复制代码
getSpanSize方法返回值控制每行显示几列