table 布局中的动态按钮水平添加

Dynamic buttons in table layout adding Horizontally

我正在尝试在 Table 布局中添加按钮。 最初我将有一个单行和一个按钮。 当用户单击该按钮时,它应该在下一行 'Horizontally'.

中创建 2 个动态按钮

但是在我的代码中,我得到的是垂直动态按钮而不是水平按钮。

while(id <rowcount+2)
{

tr = new TableRow(MainActivity.this);
table.addView(tr);

Button btn1 = new Button(MainActivity.this);
btn1.setText("");
btn1.setOnClickListener(this);
btn1.setId(id);
tr.addView(btn1);   
id++;   

}

您每次都在为循环创建一个新行
试试这个。

    tr = new TableRow(MainActivity.this);

    while(id <rowcount+2) {
      Button btn1 = new Button(MainActivity.this);
      btn1.setText("");
      btn1.setOnClickListener(this);
      btn1.setId(id);
      tr.addView(btn1);   
      id++;   
    }
   table.addView(tr);

您每次都在创建 TableRow 的新对象,TableRow 代表水平方向的元素,TableLayout 代表垂直方向的数据,这就是为什么您以垂直方式获得按钮的原因

tr = new TableRow(MainActivity.this);
while(id <rowcount+2)
{
Button btn1 = new Button(MainActivity.this);
btn1.setText("");
btn1.setOnClickListener(this);
btn1.setId(id);
tr.addView(btn1);   
id++;   
}
table.addView(tr);