Android:以编程方式预先添加LinearLayout

Tob*_*ter 2 java android prepend android-linearlayout

我创建在我的应用程序的布局,其包括以下内容:
main_layout(FrameLayout,填满整个屏幕)
- >包括:main_interface(LinearLayout,高度/宽度填充亲本)

现在我想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);
Run Code Online (Sandbox Code Playgroud)

但这只是重叠我的main_interface.

任何帮助?

Kra*_*uxe 8

如果要View在a中添加特定位置ViewGroup,则可以使用addView(view, position).在这种情况下,假设main_interface是第一个View,你可以打电话main_layout.addView(bar, 0).

但是,您需要先修复布局.如果您使用的FrameLayout是你的main_layout,并设置main_interface高度和宽度match_parent,那么他们肯定会重叠.请尝试将main_layout一个LinearLayoutandroid:orientation="vertical",如果你想垂直堆叠View秒.

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