解决使用GridView时,只显示一行的问题

解决使用GridView时,只显示一行的问题


在使用GridView时,出现了只显示一行的问题,你需要自定义GridView,重写onMeasure()方法.

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);
    }
}

之后在布局中使用你自定义的MyGridView就完美解决问题了

你可能感兴趣的:(Android)