2017-03-08 34 views
0

我一直在谷歌搜索這個答案。我一直在試圖設置一個TextView來與我的垂直LinearLayout的右側對齊。然而,設置參數和使用此...將TextView設置爲LinearLayout的右邊(垂直)

params.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); 

不起作用。我幾乎肯定這是因爲我已將寬度設置爲WRAP_CONTENT。

RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); 

的問題是,如果我將寬度設置爲MATCH_PARENT然後(如預期)TextView的背景顏色填滿屏幕的整個寬度。我並非試圖將文本的嚴重性放在正確的位置。我試圖讓整個TextView與LinearLayout的右邊對齊,同時保持寬度等於其中文本的大小。

任何人都可以幫助嗎?

+1

其中是您的垂直LinearLayout。 ? –

+0

請顯示創建佈局的XML或Java代碼。 –

回答

0

RelativeLayout.ALIGN_PARENT_RIGHT不起作用,因爲它是RelativeLayout的規則,而不是LinearLayout

假設你的LinearLayout設置爲match_parent,那麼你應該應用重力。只需添加以下TextView的

android:layout_gravity="end" 

的方案相當於是調整對TextView的佈局PARAMS:

LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT); 
params.gravity = Gravity.END; //despite the confusing name, this is on Layout params and this is layout_gravity 
params.weight = 1.0f; 
textView.setLayoutParams(params); 

注意:佈局重力和查看重力是不同的東西 - 佈局重力套視圖在其佈局中的位置,而重力爲視圖內的內容設置重力

+0

它的工作!非常感謝! – drewvy22

+0

太棒了,很高興它有幫助。謝謝,但是,因爲你是一個新用戶,我只會說,當你想感謝某人時,它打算通過upvoting和/或接受他們的回答來展示它 –

+1

試圖upvote,因爲我的名譽而不能但只是注意到我可以像你說的那樣接受答案!萬分感謝! – drewvy22

相關問題