如何以编程方式居中TableRow

use*_*202 1 android android-layout android-tablelayout

我正在以编程方式在表格行中创建多个按钮,但它们总是以左对齐方式结束.我怎样才能将整行排成一行?我正在尝试创建每一行:

TableRow row = new TableRow(getActivity());
TableLayout.LayoutParams params = new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT, Gravity.CENTER_HORIZONTAL);
row.setLayoutParams(params);

for (int j = 0; j != numButtonCols; j++) {
    Button b = new Button(getActivity());
    b.setOnClickListener(actionListener);
    row.addView(b);
    actionButtons[j][i] = b;
}

layout.addView(row);
Run Code Online (Sandbox Code Playgroud)

Lam*_*rak 7

您可以使用a简单地将行居中Gravity.只需将其设置为您的行

row.setGravity(Gravity.CENTER_HORIZONTAL);
Run Code Online (Sandbox Code Playgroud)