java – 动态添加的表行没有出现

前端之家收集整理的这篇文章主要介绍了java – 动态添加的表行没有出现前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我看过很多关于动态添加表行的帖子,但我不确定我缺少什么.

当我执行以下操作时,不显示任何内容(除了应用程序标题栏).

我的布局:

我的活动:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.table_view);

    TableLayout tableLayout = (TableLayout) findViewById(R.id.tvt_tableview);

    TableRow tableRow = new TableRow(this);
    tableRow.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.FILL_PARENT,TableRow.LayoutParams.WRAP_CONTENT));

    TextView column1 = new TextView(this);
    column1.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT));
    column1.setBackgroundColor(Color.YELLOW);
    column1.setTextColor(Color.BLUE);
    column1.setText("Col1 Value");
    tableRow.addView(column1);

    TextView column2 = new TextView(this);
    column2.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT));
    column2.setBackgroundColor(Color.RED);
    column2.setTextColor(Color.GREEN);
    column2.setText("Col2 Value");
    tableRow.addView(column2);

    tableLayout.addView(tableRow,new TableLayout.LayoutParams(TableLayout.LayoutParams.FILL_PARENT,TableLayout.LayoutParams.WRAP_CONTENT));

    //tl.refreshDrawableState();
    //findViewById(R.id.tvt_scroll_relative).refreshDrawableState();
}
最佳答案
更改两个引用

ViewGroup.LayoutParams

TableRow.LayoutParams

它应该工作.

将布局参数添加到窗口小部件需要LayoutParams是周围布局容器的内部类.

猜你在找的Android相关文章