2013-04-12 48 views
2

我動態添加水平佈局,我的活動,我試圖把它們textviews裏面。的Android集重力動態

問題是,我不能設法把一些textviews向右和一些向左。

我試過textview.setgravity,但它只改變了textview裏面的文字的位置,而不是移動textview本身。

編輯:這裏是我的一些代碼,以幫助您得到一個想法:

for(int i=0;i<nbelem;i++){   //génération des boutons des commandes 
     layouts[i] = new RelativeLayout(this); 
     layouts[i].setClickable(true);  //toute la zone est cliquable 
     layouts[i].setId(i); 
     layouts[i].setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, 150)); 


     Info[i] = new TextView(this); 
     Info[i].setClickable(true); 
     Info[i].setId(i); 
     Info[i].setText("Pizza 4 fromages x2 \n Pizza chevre x2"); 
     Info[i].setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.FILL_PARENT)); 

     layouts[i].addView(Info[i]); 


     Numcom[i] = new TextView(this); 
     Numcom[i].setClickable(true); 
     Numcom[i].setId(i); 
     Numcom[i].setText("n°1522"); 
     Numcom[i].setGravity(Gravity.RIGHT | Gravity.TOP);    
     Numcom[i].setTextSize(12); 
     Numcom[i].setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,50)); 

回答

1

這聽起來是RelativeLayout可滿足您的需求,併爲您節省大量的嵌套LinearLayout S的使用推薦(性能明智)。

+0

問題是,我要上留下了一些textviews,和其他的rught,therefir,我不能改變佈局 – wazaminator

+0

的嚴重性添加要實現佈局的草圖,我會盡力幫助你 –

0

你必須佈局重心設置爲包含你的TextView的LinearLayout中。

LayoutParams lp = new LayoutParams(); 
lp.gravity= Gravity.CENTER_HORIZONTAL; 
textview1.setLayoutParams(lp); 

確保您使用LinearLayout.LayoutParams

+0

我得到了「lp.gravity無法解析或不是字段」 我在另一個問題上看到了它,並嘗試了他們給他的解決方案,但即使使用該包,它仍然沒有計算出來。 – wazaminator

+0

我認爲你的LayourPrms類型爲RelativeLayout,因此你可以在孩子上使用「tetxview.addRule(RelativeLayout.ALIGN_RIGHT)」。 – pzagor2