此貼爲標記貼 方便下次使用ide
在項目需求中本來是用ScrollView來進行整個頁面的滑動,ScrollView裏面包含的有圖片輪播,文字輪播,與2列GridView的item函數
問題blog
使用原生的GridView ,ScrollView與GridView的滑動就成了分開的不能再一塊兒滑動而且還有gridView進到ScrollView下面等小問題圖片
百度後重寫GridView的onMeasure函數後出現一次性把數據加載完 致使內存問題。內存
解決方法
使用RecyclerView代替了GridView 我使用的是PullToRecycler 由於項目還有刷新與加載
在RecyclerView設置GridLayoutManager的時候設置manager的setSpanSizeLookup函數
例如:
final GridLayoutManager gridLayoutManager = new GridLayoutManager(context, 2);
/**這裏將第一個item也就是添加的heard設置爲一行而不是*/
gridLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
//isHeader(position)是從adapter中返回當前的position是否是第一個,而後設置寬度
return adapter.isHeader(position) ? gridLayoutManager.getSpanCount() : 1;
}
});
recycler_view.setLayoutManager(gridLayoutManager);
adapter的獲取是否是第一個函數
public boolean isHeader(int position)
{
return position == 0;
}
添加頭不是在下拉後才能看到而是adapter的第一個位置
添加頭的代碼就是pulltoRefresh裏
我用的是jingchen大神的需注意get