我正在向GridLayout
添加一定数量的按钮,我不想设置特定的列数量(因为当我这样做并且手机的方向发生变化时,事情看起来不太好)。我已经尝试取出列规范,但这只会导致它有1个非结束行。
我希望按钮的大小相同,并让它们填充可用的空白区域。我对拉伸按钮的宽度不感兴趣。
爪哇:
GridLayout gridLayout = (GridLayout) findViewById(R.id.layout_grid);
for(int i = 0; i < numButtons; i++)
{
Button button = new Button(this);
button.setText(i+"");
gridLayout.addView(button);
}
XML (我正在将GridLayout
包裹在ScrollView
中,因为我预计按钮会在屏幕上垂直运行):
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/scrollview_grid"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true"
tools:context=".Grid" >
<GridLayout
android:id="@+id/layout_grid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin" >
</GridLayout>
</ScrollView>
答案 0 :(得分:1)
我建议您使用简单的GridView
,并将numColumns
属性设置为auto_fit
。它还会为您进行滚动操作,以便您删除ScrollView
。
http://developer.android.com/reference/android/widget/GridView.html#attr_android:numColumns