RecyclerView從出來到現在基本上廣泛使用了,但是對於我這樣的還有很多東西不會用。基本使用包含listview模式和GridView模式,最近使用GridView模式,也就是使用GridLayoutManager 發現了一個有用的方法,可以像word中表格合併單元格一樣使用,合併掉一些單元格。
使用方法,在獲取GridLayoutManager 以後調用一個方法:
//具體使用
gridLayoutManager.(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
int type = indexRecyclerView.getAdapter().getItemViewType(position);//獲得返回值
//LogUtils.e("TAG","type:"+type);
if (type == 1 || type == 2 || type == 3) {
return 2;//佔兩格
} else {
return 1;
}
}
});
//結合RecyclerView適配器的getItemViewType(position) 方法獲取類型。
@Override
public int getItemViewType(int position) {
// LogUtils.e("TAG","position-Type:"+position);
if (position == 0) {
return TYPE_VIEWPAGER;
} else if (position == 1) {
return TYPE_OPERATION;
} else if (position == 2) {
return TYPE_GUIDER;
} else {
return TYPE_GRIDVIEW;
}
}
有了這個方法,我們可以在GridVewi模式下很方便的合併掉某幾個grid。這裏記錄一下,方便後續查找
之前自己寫的已經改了,沒有效果圖,在網上找了一個效果圖如下:(下圖是合併了第一第二個單元格的效果)