Android layout 两个片段在屏幕上显示不同旋转的活动

Android layout 两个片段在屏幕上显示不同旋转的活动,android-layout,android-fragments,Android Layout,Android Fragments,我有一个活动是关于碎片的。我不知道如何进行布局,使它们在纵向方向上一个接一个,在横向方向上一个接一个。我是否必须制作两个布局,并在“onCreate”方法中检查方向,然后渲染相应的布局?或者我应该设置不同的布局?(就像现在一样,在纵向视图中是可以的,但在横向视图中它们重叠) 以下是我的布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schem

我有一个活动是关于碎片的。我不知道如何进行布局,使它们在纵向方向上一个接一个,在横向方向上一个接一个。我是否必须制作两个布局,并在“onCreate”方法中检查方向,然后渲染相应的布局?或者我应该设置不同的布局?(就像现在一样,在纵向视图中是可以的,但在横向视图中它们重叠)

以下是我的布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.apps.rucsi.biorhytm.MainActivity">

<fragment android:name="com.apps.rucsi.biorhytm.InputFragment"
    android:id="@+id/inputFragment"
    android:layout_weight="1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"/>

<fragment android:name="com.apps.rucsi.biorhytm.OutputFragment"
    android:id="@+id/outputFragment"
    android:layout_weight="1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"/>

结果是纵向的:


在lanscape中,它们是重叠的:

所以这里发生了什么,您将顶部片段设置为与父级的顶部对齐
android:layout\u alignParentTop=“true”
,将底部片段设置为与父级的底部对齐
android:layout\u alignParentBottom=“true”
。你很幸运,因为它们很合身

您可以做一些事情,将其添加到第二个片段中,告诉它在第一个片段下面
android:layout\u toEndOf=“@+id/inputFragment”


或者您可以将它们放入线性布局。

因此,您可以将顶部片段设置为与父级的顶部对齐
android:layout\u alignParentTop=“true”
,将底部片段设置为与父级的底部对齐
android:layout\u alignParentBottom=“true”
。你很幸运,因为它们很合身

您可以做一些事情,将其添加到第二个片段中,告诉它在第一个片段下面
android:layout\u toEndOf=“@+id/inputFragment”


或者你可以把它们放在一个线性布局中。

好吧,我把它们放在一个线性布局中,我为纵向设置了垂直方向,为横向设置了水平方向。没关系,但我必须使用两种布局(例如布局和布局)?我不知道如何在一个布局中同时适应两种情况。你只需要垂直方向。如果你旋转手机,“向上”的位置也会改变,因此你不需要单独的布局。是的,但在横向中,我不想要下图,我想要它在表单的右侧。在垂直方向上,它将其与下方的景观对齐。如果我错过了什么,我很抱歉,我是Android开发的新手。谢谢你的回答!哦,对不起,你是对的,我没有正确阅读你的帖子。是的,你也需要一个横向版本。嗯,我把它们放在一个线性布局中,我为纵向设置了垂直方向,为横向设置了水平方向。没关系,但我必须使用两种布局(例如布局和布局)?我不知道如何在一个布局中同时适应两种情况。你只需要垂直方向。如果你旋转手机,“向上”的位置也会改变,因此你不需要单独的布局。是的,但在横向中,我不想要下图,我想要它在表单的右侧。在垂直方向上,它将其与下方的景观对齐。如果我错过了什么,我很抱歉,我是Android开发的新手。谢谢你的回答!哦,对不起,你是对的,我没有正确阅读你的帖子。是的,你也需要一个横向版本。