特定の数のボタンを a に追加していますが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>