我有一个类,其内容设置为具有几个按钮和一个 TableLayout 的布局。
制作 TableLayout 的真正工作是在一个单独的静态助手类中,它有一个返回所需表格的方法。
但是,表格没有显示。我错过了什么极其简单的事实?
这是内容设置为布局的类:
public class TesterActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TableLayout table = (TableLayout) findViewById(R.id.table);
table = TableHelper.getTable_BINARY_NUMBERS(getApplicationContext(), 5, 25);
}
}
下面是创建表格内容的辅助类:
public class TableHelper {
public static TableLayout getTable_BINARY_NUMBERS(Context context, int numRows, int numCols) {
TableLayout table = new TableLayout(context);
table.setStretchAllColumns(true);
table.setShrinkAllColumns(true);
TableRow[] rows = new TableRow[numRows];
for (int row=0; row<numRows; row++) {
rows[row] = new TableRow(context);
for (int col=0; col<numCols-1; col++) {
TextView num = new TextView(context);
num.setText("0");
rows[row].addView(num);
}
TextView rowText = new TextView(context);
rowText.setText("Row " + (row + 1));
rowText.setTextAppearance(context, android.R.style.TextAppearance_Small);
rows[row].addView(rowText);
rows[row].setPadding(0, 50, 0, 0);
table.addView(rows[row]);
}
return table;
}
}
最佳答案
不是返回一个新的表格布局,而是将您立即获得的表格传递给您的 getTable_BINARY_NUMBERS()
并在您的方法中修改它,而不是返回一个全新的表格布局。
关于Android TableLayout 不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8059539/