2012-01-02 5 views
1

基本的に、私はこのレイアウト構造を持っています:<RelativeLayout> <RelativeLayout> <TextView /> </RelativeLayout> <ScrollView> <RelativeLayout> ... </RelativeLayout> </ScrollView> </RelativeLayout>とボタンをプログラムで追加したいのですが。このボタンはの内側にある<RelativeLayout>の内側にある必要があります。また、私はそれを下部とCENTER_VERTICALに整列させる必要があります。 私は本当にヒント/例を感謝します;)ありがとう! P.P.しかし、スタックオーバーフローに関する多くの同様の質問がありますが、答えのどれも私を助けませんでした...Buttonをパラメータでプログラムで追加しますか?

+1

[XML]を選択し、Ctrlキーを押しながら+ Shiftキー+ Kがコードをフォーマットするにはよさそうです。 –

答えて

7

まず相対レイアウトにID:android:id="@+id/myLayout"を与える必要があります。次に、Javaコードで :それはなるよう

Button b = new Button(this); 
RelativeLayout.LayoutParams rl = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); 
rl.addRule(RelativeLayout.ALIGN_BOTTOM); 
b.setLayoutParams(rl); 
((RelativeLayout) findViewById(R.id.myLayout)).addView(b); 
+0

ありがとうございました! RelativeLayoutに 'WRAP_CONTENT'があり、ボタンを一番下に合わせることができなかったため、より良い外観のために 'params.bottomMargin = 20;'を追加して、.xmlファイルを変更しました。 – lomza

+0

新しく作成されたボタンが 'TextView'の下になければならないということをプログラムで「言う」ことができたら、私も興味がありましたか?ありがとう。 – lomza

+2

確かに: 'rl.addRule(RelativeLayout.BELOW、R.id.textview01);' – Thommy

関連する問題