以编程方式生成的TextViews相互打印

时间:2015-11-11 09:15:31

标签: android textview

我在循环中生成TextView并将它们添加到相对布局中,如下所示:

RelativeLayout relativeLayout2 = (RelativeLayout) findViewById(R.id.rl_root);

for(int i = 0; i < 5; i++)
{
  TextView textvw = new TextView(this);
  textvw.setText(Integer.toString(i));
  relativeLayout2.addView(textvw);
  for(int j = 0; j < 10; j++)
  {
    TextView textvw2 = new TextView(this);
    textvw2 .setText(Integer.toString(j+5));
    relativeLayout2.addView(textvw2);
  }
}

当我这样做时,所有textViews都在同一个地方打印。我希望它们出现在彼此之下。我的意思是第一个将位于顶部,一个位于顶部之下,就像那样。我怎样才能做到这一点?感谢。

1 个答案:

答案 0 :(得分:1)

使用“线性”布局而不是“相对”布局,如​​果希望将方向放在另一个下方,请将方向设置为“垂直”。

LinearLayout linearLayout2 = (LinearLayout) findViewById(R.id.rl_root);
for(int i = 0; i < 5; i++) { TextView textvw = new TextView(this);
textvw.setText(Integer.toString(i));
relativeLayout2.addView(textvw); for(int j = 0; j < 10; j++) { TextView textvw2 = new TextView(this);
textvw2 .setText(Integer.toString(j+5));
linearLayout2.addView(textvw2); } }