项目中需要实现微信钱包页面类似的布局,我第一次看到后觉得很容易,用recyclerview嵌套grideview就能实现,往回一想太麻烦,
并且要写好多adapter和相应的点击事件。于是我想能不能只用recyclerview不嵌套能不能实现。在网上搜到一个神奇的方法解决了我的问题LayoutManager.setSpanSizeLookup(SpanSizeLookup loopup)
private void initView() {
recycleView = (RecyclerView) findViewById(R.id.recycleView);
GridLayoutManager manager = new GridLayoutManager(this,3, LinearLayoutManager.VERTICAL,false);
MyAdapter adapter = new MyAdapter(list);
recycleView.setAdapter(adapter);
manager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
return list.get(position).spanCount;
}
});
recycleView.setLayoutManager(manager);
}
例如我LayoutManager设置为Gride