2012-07-05 74 views
0

enter image description here我必须在按钮点击的相对布局中添加自定义布局。 再次在另一次点击上添加相同的布局,其他值高于先前的膨胀布局。 它会继续如此。 我不想使用列表视图。动态添加一个下方的自定义布局

我可以动态添加我的自定义布局,但是如何将它放在之前添加的上方。

添加按钮创建一个新的行会被添加到我的XML中相对布局,如第1行,第2行的点击,这将继续进行第3行,4行等

回答

1

可以使用addRule RelativeLayout.LayoutParams类的方法。例如:

RelativeLayout.Layoutparams params = (RelativeLayout.LayoutParams)button.getLayoutParams(); 
params.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); 
params.addRule(RelativeLayout.LEFT_OF, R.id.id_to_be_left_of); 

button.setLayoutParams(params); 

这样做,你可以通过编程设置所有PARAMS你会在你的布局XML文件中设置。

+0

但我想将自定义布局放置在以前添加的自定义布局之上,这将继续。 – zaiff 2012-07-05 10:10:34

1

按钮单击事件添加以下代码:

  LinearLayout linearLayout=(LinearLayout) findViewById(R.id.layout); 
      LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT); 


      LinearLayout layout=new LinearLayout(getApplicationContext()); 
      LinearLayout.LayoutParams params1 = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT); 
      layout.setOrientation(LinearLayout.VERTICAL); 
      layout.setLayoutParams(params); 
      Button button1=new Button(getApplicationContext()); 
      button1.setLayoutParams(params1); 
      button1.setText("button"); 


      layout.addView(button1); 
      linearLayout.addView(layout); 

定义垂直于XML file.You ID为@ + ID /布局和方向的布局会发现在每次点击事件添加的按键布局。

+0

请看我已添加的图像。 – zaiff 2012-07-05 10:53:04

相关问题