首页 > 代码库 > Android 嵌套GridView,ListView只显示一行的解决办法

Android 嵌套GridView,ListView只显示一行的解决办法

重写ListView、GridView即可:

public class MyListView extends ListView {    public MyListView(Context context) {        // TODO Auto-generated method stub        super(context);    }    public MyListView(Context context, AttributeSet attrs) {        // TODO Auto-generated method stub        super(context, attrs);    }    public MyListView(Context context, AttributeSet attrs, int defStyle) {        // TODO Auto-generated method stub        super(context, attrs, defStyle);    }    @Override    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {        // TODO Auto-generated method stub        int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,                MeasureSpec.AT_MOST);        super.onMeasure(widthMeasureSpec, expandSpec);    }}
public class MyGridView extends GridView{      public MyGridView(Context context, AttributeSet attrs) {             super(context, attrs);         }              public MyGridView(Context context) {             super(context);         }              public MyGridView(Context context, AttributeSet attrs, int defStyle) {             super(context, attrs, defStyle);         }              @Override         public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {                  int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,                     MeasureSpec.AT_MOST);             super.onMeasure(widthMeasureSpec, expandSpec);         } }