用参数以编程方式添加按钮?
基本上,我有这样的布局结构:<RelativeLayout> <RelativeLayout> <TextView /> </RelativeLayout> <ScrollView> <RelativeLayout> ... </RelativeLayout> </ScrollView> </RelativeLayout>
,我想以编程方式添加按钮。此按钮应位于<ScrollView>
内的<RelativeLayout>
之内。另外,我需要将它对齐到底部和CENTER_VERTICAL。 我真的很感激任何提示/例子;)谢谢! P.S.尽管在stackoverflow上有很多类似的问题,但没有一个答案对我有帮助...用参数以编程方式添加按钮?
首先,您需要给XML中的相对布局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);
非常感谢你!我还添加了'params.bottomMargin = 20;'以获得更好的外观并更改我的.xml文件,因为RelativeLayout有'WRAP_CONTENT',并且不可能将我的按钮对齐到底部。 – lomza 2012-01-02 09:15:17
我也很感兴趣,如果我可以通过编程“说”,新创建的按钮应该位于某个“TextView”下方,例如?谢谢。 – lomza 2012-01-02 13:00:11
当然你可以:'rl.addRule(RelativeLayout.BELOW,R.id.textview01);' – Thommy 2012-01-02 13:38:51
选择XML,然后按CTRL + SHIFT + K格式化代码,以便它会看起来很不错。 – 2012-01-02 08:12:29