1. 程式人生 > >RecyclerView巢狀ListView 只顯示一條資料

RecyclerView巢狀ListView 只顯示一條資料

 今天做專案發現  RecyclerView巢狀ListView 只顯示一個item, 咋辦!

此時我們需要把ListView重寫一下onMeasure方法。因為當ListView的Item每次改變時都會呼叫onMeasure.

自定義ListView就可以 了

public class MYListView extends ListView {
    public MYListView(Context context) {
        super(context);
    }

    public MYListView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public MYListView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }

    public MYListView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
        super(context, attrs, defStyleAttr, defStyleRes);
    }


  @Override
  protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
      int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,MeasureSpec.AT_MOST);
      super.onMeasure(widthMeasureSpec, expandSpec);
  }
 

}