We know that ScrollView, GridView and ListView can all slide up and down, but using them together will cause a sliding conflict. Only by rewriting GridView or ScrollView or ListView can this problem be solved
1. Rewrite GridView
public class GridViewForScrollView_NoNetActivity extends GridView {
public GridViewForScrollView_NoNetActivity(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
}
}
2. Rewrite ListView
public class GridViewForScrollView_NoNetActivity extends GridView {
public GridViewForScrollView_NoNetActivity(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
}
}