多個RecycleView 巢狀顯示不全的情況
阿新 • • 發佈:2019-01-23
場景:
專案中最外層使用ScrollView,裡面嵌套了recycleview,recycleview中又嵌套了多個recycleview,導致部分recycleview顯示不出來
app介面的結構圖:
<xml>
<LinearLayout>
*******
<RecycleView>
</RecycleView>
*****
<ScroolView>
<RecycleView
id="@+id/recycle">
</RecycleView>
</ScroolView>
*******
</LinearLayout >
</xml>
其中在**id為recycle**中又有多個Recycleview。
此時,作為父RecycleView並不能把子RecycleView完全顯示出來,所以我們需要自定義一個RecycleView用來把子RecycleView完全顯示出來:
下面是自定義的RecycleView
/**
* 最大化的RecyclerView,巢狀於ScrollView之中使用
*/
public class MaxRecyclerView extends RecyclerView {
public MaxRecyclerView(android.content.Context context, android.util.AttributeSet attrs){
super (context, attrs);
}
public MaxRecyclerView(android.content.Context context){
super(context);
}
/**
* 設定不滾動
*/
public void onMeasure(int widthMeasureSpec, int heightMeasureSpec){
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,MeasureSpec.AT_MOST);
super .onMeasure(widthMeasureSpec, expandSpec);
}
}
這樣就解決了部分手機不顯示的情況,例如公司裡面的努比亞手機。