현재 위치 - 인적 자원 플랫폼망 - 기밀 정보 정보 - GridView의 너비와 높이를 동적으로 설정하는 방법(Android)
GridView의 너비와 높이를 동적으로 설정하는 방법(Android)

다음 두 가지 방법을 사용할 수 있습니다.

1. xml 레이아웃 파일에 설정한 Wrap_content는 GridView의 내용에 따라 너비와 높이를 사용한다는 의미입니다. 다음과 같습니다:?android:layout_width="wrap_content" android:layout_height="wrap_content"

2. 코드에서 동적으로 설정한 후 그리드뷰의 너비와 높이를 계산합니다. 그런 다음 설정합니다: int?height?=? 20; //여기의 높이는 동적으로 계산되어야 합니다.

int?width?=?30; //여기의 너비는 동적으로 계산되어야 합니까?

p>

LinearLayout.LayoutParams?linearParams?= new?LayoutParams(width,?height);

gridview.setLayoutParams(linearParams);?//설정된 레이아웃 매개변수를 컨트롤에 적용

Gridview가 ScrollView에 중첩되어 있으면 Gridview 컨트롤을 다시 작성해야 합니다. 그렇지 않으면 Gridview는 한 줄만 표시합니다(즉, 특정 높이가 충분하지 않습니다). 다시 작성하는 방법은 다음 코드를 참조할 수 있습니다. /** *?@author?hnbcinfo *?GridView 컨트롤을 사용자 정의하여 ListView 또는 ScrollView에서 GridView를 사용하여 발생하는 GridView의 불완전한 표시 문제를 해결합니까? *?현재 응용 프로그램: in 타임라인, 사진 표시*/

public?class?GridViewForScrollView?extends? GridView?{?

public?GridViewForScrollView(Context?context, ?AttributeSet?attrs)?{?< /p>

super(context, ?attrs);?

}?

public?GridViewForScrollView(Context?context)?{?

super (컨텍스트);?

}?

public ?GridViewForScrollView(Context?context, ?AttributeSet?attrs, ?int?defStyle)?{?

super (컨텍스트, ?attrs, ?defStyle);?

}?

@Override?

public?void?onMeasure(int?widthMeasureSpec, ?int? heightMeasureSpec)?{?

int?expandSpec?=?MeasureSpec.makeMeasureSpec( ?

Integer.MAX_VALUE?gt;gt;?2,?MeasureSpec.AT_MOST);?

p>

super.onMeasure(widthMeasureSpec,?expandSpec);?

}?

}