LayoutParams引力不起作用

时间:2014-09-07 07:47:32

标签: android

我有一个父级LinearLayout和MATCH_PARENT的宽度和高度。我试图用java代码找出设置重力和layout_gravity。

LinearLayout l=new LinearLayout(this);
l.setGravity(Gravity.CENTER);
LinearLayout.LayoutParams ll=new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
l.setLayoutParams(ll);
l.setOrientation(LinearLayout.VERTICAL);

现在我使用以下代码添加一个Button:

LayoutParams llb=new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
llb.gravity=Gravity.RIGHT;
b.setLayoutParams(llb);

现在,如果我将此Button添加到LinearLayout l并使其成为内容视图

l.addView(b);
setContentView(l);

一切正常。该按钮显示在中心和右侧。

但是,如果我将此Button嵌入LinearLayout,然后将此LinearLayout添加到外部布局,如下所示

LinearLayout l2=new LinearLayout(this);
        l2.setOrientation(LinearLayout.HORIZONTAL);
        LinearLayout.LayoutParams ll2=new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
        l2.setLayoutParams(ll2);
        l2.addView(b);

//将此添加到主布局。该按钮具有与上面相同的LayoutParams。

l.addView(l2);
            setContentView(l);

按钮始终显示在左侧,此

  llb.gravity=Gravity.RIGHT;

似乎不起作用。

请更新为何无效。

感谢

0 个答案:

没有答案