2012-11-17 66 views
0

我想用不同的顏色動態添加四個相對佈局。當我嘗試添加該容器時,該容器包含四個子視圖。但三種佈局僅可見。如何使第一個佈局可見。在視圖組中動態添加布局

我的代碼

int[] colors={Color.RED,Color.BLACK,Color.BLUE,Color.YELLOW}; 
     for(int i=0;i<4;i++){ 
      RelativeLayout relativeLayout=new RelativeLayout(MainActivity.this); 
      relativeLayout.setId(i); 
      RelativeLayout.LayoutParams layoutParams=new RelativeLayout.LayoutParams(2400,100);     
      if(i>0){ 
      layoutParams.addRule(RelativeLayout.BELOW,audioContainer.getChildAt(i-1).getId()); 
      } 
      relativeLayout.setLayoutParams(layoutParams); 
      relativeLayout.setBackgroundColor(colors[i]); 
      audioContainer.addView(relativeLayout);   

     } 
+0

答案有幫助嗎? – brillenheini

回答

0

它不工作,因爲ID必須是正數。你可以簡單地添加1:

relativeLayout.setId(i + 1); 

做你想要的東西通常是當容器是垂直方向的LinearLayout中容易得多。您可以簡單地添加視圖,而不必指定任何佈局規則或ID。

+0

如果我使用這個,我不能 – Mathi

相關問題