3

我在我的应用程序中创建了一个布局,其中包括以下内容:(
main_layoutFrameLayout填充整个屏幕)
-> 包括:(main_interfaceLinearLayout高度/宽度填充父级)

现在我想LinearLayoutmain_layoutBEFORE中添加另一个main_interface。我试过这个:

LinearLayout bar = new LinearLayout(this);
        bar.setGravity(Gravity.TOP);
        LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
        bar.setLayoutParams(params);
        main_layout.addView(bar);

但这只是与我的main_interface.

有什么帮助吗?

4

1 回答 1

11

如果要将 a 添加到 aView中的特定位置ViewGroup,可以使用addView(view, position). 在这种情况下,假设main_interface是第一个View,您可以调用main_layout.addView(bar, 0).

但是,您需要先修复布局。如果您使用FrameLayoutas yourmain_layout并将main_interface高度和宽度设置为match_parent,那么它们肯定会重叠。如果您想要垂直堆叠的 s ,请尝试制作您main_layout的 a 。LinearLayoutandroid:orientation="vertical"View

如果您可以发布您的实际 XML 布局,我可以帮助您修改和测试它。

于 2013-05-29T00:15:58.150 回答