这是一个Android开发问题
如果我首先使用setContentView(R.layout.main);
将内容视图设置为我的xml布局,然后使用addContentView(layout, params)
添加其他内容视图,则内容视图会相互重叠。我希望第二个内容视图直接在第一个内容下面定位。是否可能或者我是否需要以某种方式组合xml和以编程方式创建的布局?两种布局都是线性的。
提前致谢
答案 0 :(得分:5)
将两个布局放在LinearLayout
垂直方向内。就是这样。
修改:
我的意思是你必须创建一个3布局的xml文件。
你的主要布局文件应该是这样的:
<LinearLayout android:orientation="vertical">
<include android:id="+id/lay1" android:layout="@layout/layout1"/>
<include android:id="+id/lay2" android:layout="@layout/layout2"/>
</LinearLayout>
现在是您setContentView(R.layout.main)
答案 1 :(得分:1)
谢谢你们。我很感激反馈。
在父布局(CoordinatorLayout)上使方向垂直不起作用。
有效的方法是将两个元素放在一个垂直方向的LinearLayout中。
上面的一条评论说我应该首先布局appbarlayout:是的,我改回来了。我已将其更改为LinearLayout,这是我尝试让这些项目停止在彼此之上绘制的。
我不确定这是解决这个问题的正确方法,但它确实有效。我会继续前进。再次感谢。
答案 2 :(得分:0)
要将布局放在彼此的顶部(一个在另一个上面),这就是我所做的:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:id="@+id/topLayout"
android:layout_width="match_parent"
android:layout_height="300dp"
android:layout_alignParentTop="true"
android:background="@color/colorAccent">
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="126dp"
android:text="Existing Client"
android:textColor="@android:color/white"
android:textSize="20sp"
android:textStyle="bold" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="300dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:background="@color/colorPrimary">
<TextView
android:id="@+id/textView7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="138dp"
android:text="New Client"
android:textColor="@android:color/white"
android:textSize="20sp"
android:textStyle="bold" />
</RelativeLayout>
结果:
我的目的是将布局用作填充屏幕宽度的按钮。