2015-11-11 19 views
0

我生成TextViews并将它们添加到这样一个相对布局:程序生成TextViews打印在循环中相互

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在同一个地方进行打印。我希望他们出现在对方之下。我的意思是第一个将在顶部,而第二个在顶部以下。我怎样才能做到这一点?谢谢。

+4

尝试使用垂直Linearlayout而不是RelativeLayout。 – TdSoft

+0

@TdSoft它的工作,谢谢。 – jason

+0

不客气。 – TdSoft

回答

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); } }