繁体   English   中英

以编程方式在 GridLayout 中设置 layout_column 和 layout_row

[英]Set layout_column and layout_row in GridLayout programmatically

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

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

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

GridLayout grid = new GridLayout(getActivity());

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

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

与所有layout_...参数一样, layout_columnlayout_row的等效项可以作为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)));

您必须执行以下操作:

GridLayout gridLayout = new GridLayout(this);
gridLayout.setColumnCount(2);
gridLayout.setRowCount(4);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM