RecyclerView的使用

500 阅读1分钟

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方法返回值控制每行显示几列