0

layout1 由屏幕顶部的状态栏和底部的工具栏组成。它是在xml中定义的。我想以编程方式将 layout2 放置在 layout1 的状态栏和工具栏之间。

setContentView(R.layout.layout1);
layout2 = new MyLayout(this);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(
    LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.leftMargin = 0;
params.addRule(RelativeLayout.BELOW, R.id.statusbar); // this does not work.
addContentView(layout2, params);

此代码将 layout2 放在屏幕顶部,因此它隐藏了 layout1 的状态栏。如何将 layout2 放置在我想要的位置?还有其他不使用 addContentView 的方法吗?

4

2 回答 2

2
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
    LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);

params.gravity = Gravity.CENTER;

我尝试了这项工作。

于 2012-10-30T08:37:59.933 回答
0

以编程方式在线性布局中设置重力。

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

    params.gravity = Gravity.CENTER;
于 2012-10-30T04:44:08.273 回答