15

我有一个 GridLayout(不是 GridView),我想在其中添加一些带有特殊行和列 inex 的视图。在 XML 中,我可以设置视图:

<TextView
    android:id="@+id/textView1"
    android:layout_column="2"
    android:layout_row="4"
    android:text="Large Text" />

但是如何以编程方式设置属性layout_columnlayout_row?我想要这样的东西:

GridLayout grid = new GridLayout(getActivity());

grid.setColumn(2);
grid.setRow(4);

grid.addView(new Button(getActivity());
4

1 回答 1

17

layout_column和的等价物layout_row,与所有layout_...参数一样,可以作为 的子类的参数找到LayoutParams

在这种情况下,它是GridLayout.LayoutParams,我们像这样使用它(对于一个 2x2 网格,在最后一行和最后一列中有一个子视图,在单元格内居中):

gridLayout.setColumnCount(2);
gridLayout.setRowCount(2);

gridLayout.addView(subview, new GridLayout.LayoutParams(
                              GridLayout.spec(1, GridLayout.CENTER),
                              GridLayout.spec(1, GridLayout.CENTER)));
于 2014-01-28T05:06:26.020 回答