0
我有一个带有4列imgs的gridView。当手机转向横向布局时,gridView的网格会展开以填充宽度,从而在img之间创建空白区域,尽管img保持所需的宽度。在横向布局中,有没有办法让网格视图填充屏幕宽度?防止gridView扩展以适应横向宽度
我有一个带有4列imgs的gridView。当手机转向横向布局时,gridView的网格会展开以填充宽度,从而在img之间创建空白区域,尽管img保持所需的宽度。在横向布局中,有没有办法让网格视图填充屏幕宽度?防止gridView扩展以适应横向宽度
我有2种方法来做到这一点:
1)对于每个方向创建布局:
res/layout/....
res/layout-land/....
2)只有一个布局垂直和水平两个方向:
设置GridView:android:numColumns="4"
你[R自定义视图项,始终设置android:layout_width="match_parent"
用第二种方法,可以与高的项目的encount问题。只需创建您的自定义视图并覆盖onMeasure
。
例如:我需要一个LinearLayout中对我的项目和保持我比height/width = 4.5/4
,所以我做了以下自定义:
public class MyLinearLayout extends LinearLayout {
//..... constructor methods
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int scaleHeight =(int)(widthMeasureSpec/4*4.5);
super.onMeasure(widthMeasureSpec, scaleHeight);
}
}