当遇到一个列表,有时候一行中有一列,有时候一行中有三列这种布局时可使用如下方法:
goodlist=(RecyclerView)view.findViewById(R.id.recyclerview);
final GridLayoutManager gridManager = new GridLayoutManager(mContext,2);
gridManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
switch (adapter.getItemViewType(position)) {
case 0:
return 2;
case 1:
return 1;
case 2:
return 2;
case 3:
return 2;
case 4:
return 2;
case 5:
return 2;
}
return 0;
}
});
goodlist.setLayoutManager(gridManager);
返回值就是指的那一行中有多少列