我使用默认的重力显示了一堆按钮。我添加到LinearLayout视图的最后一个按钮是我想要显示在视图底部的按钮。如何以编程方式添加它以显示在屏幕底部?我试过设定引力,但一切都落到了底部。我只想让一个按钮落到屏幕的底部。理想情况下,我不必再提出另一种观点。
答案 0 :(得分:6)
试试这个:
Button button = new Button(this);
youLinearLayout.addView(button, new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, Gravity.BOTTOM));
修改强> 抱歉,上面的代码不起作用。
如果orientation == vertical。
,则无法使用单个LinearLayout执行此操作您需要创建另一个布局(RelativeLayout)并向其添加TextView。
RelativeLayout relative = new RelativeLayout(this);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams( LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT );
params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
relativeLayout.addView(textView, params);
linearLayout.addView(relativeLayout, new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
答案 1 :(得分:4)
如果屏幕的其余部分不为空,您可以将android:layout_weight=0.0
提供给按钮,将1.0提供给顶部的小部件。
通过这种方式,具有1.0权重的窗口小部件将扩展以填充空白区域,而具有0.0的Button将仅占用默认空间,并且作为最后一个项目加到垂直LinearLayout,它将粘贴到底部。