两个片段在屏幕旋转中显示不同的活动
问题描述:
我对片段有一个活动。我不知道如何制作布局,以便在纵向上将它们放在另一个下面,并且在横向上一个接一个。我是否必须制作两种布局,并在“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"/>
答
所以这里发生了什么,你设置您的顶部片段要与父亲android:layout_alignParentTop="true"
的顶部对齐,并且您的底部片段要与第父母的底部android:layout_alignParentBottom="true"
。你只是幸运的肖像,他们适合。
你可以做一些事情设置添加到第二个片段,告诉它下面的第一个片段android:layout_toEndOf="@+id/inputFragment"
。
或者你可以把它们放到线性布局中。
嗯,我把它们放在一个LinearLayout中,我为纵向设置垂直方向,为横向设置水平方向。没关系,但是我必须使用2个布局(例如layout和layout_land)?我无法弄清楚如何在单一布局中制作适合这两种情况的方案。 – Rucsi
你只需要垂直方向。如果你旋转你的手机,“上”的内容也会改变,所以你不需要单独的layout_land来代替这个 – jbarat
是的,但是在横向上我不想要下面的图表,我希望它在表单的右侧。垂直方向将其与横向对齐。如果我错过了一些东西,我很抱歉,我在Android开发中很新。谢谢您的回答! – Rucsi