Android:使用FrameLayout& amp;屏幕方向的RelativeLayout

时间:2011-02-02 07:13:23

标签: android orientation relativelayout android-framelayout

我有一个Android应用程序,它由FrameLayout的主要布局组成,它在RelativeLayout中设置了两个视图。 (参见下面的布局XML文件)。 问题是第二个视图(view2)屏幕方向(视图变为黑色,应用程序被冻结)。

我尝试过使用该选项没有成功 机器人:取向=“水平” 在布局 - 土地资源。

请告知。

谢谢。 Oakist

main.xml中

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/container"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<include android:id="@+id/notelist" layout="@layout/view1" />
<include android:id="@+id/notelist" layout="@layout/view2" />
</FrameLayout>

view1.xml

<RelativeLayout android:id="@+id/Layout01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<ImageView
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_width="wrap_content"
android:id="@+id/image01"
android:layout_height="wrap_content"
>
</ImageView>
</RelativeLayout>

view2.xml

<RelativeLayout android:id="@+id/Layout02"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<ImageView
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_width="wrap_content"
android:id="@+id/image02"
android:layout_height="wrap_content"
>
</ImageView>
</RelativeLayout>

2 个答案:

答案 0 :(得分:4)

Android文档说

的FrameLayout FrameLayout是最简单的布局对象类型。它基本上是屏幕上的空白区域,您可以稍后填充单个对象 - 例如,您可以交换的图片。 FrameLayout的所有子元素都固定在屏幕的左上角;您无法为子视图指定其他位置。 后续的子视图将简单地绘制在以前的视图上,部分或完全模糊它们(除非较新的对象是透明的)。

你有两个孩子,一个在另一个上面。我认为这就是你想要的,对吗?您是否尝试将图像视图直接放入框架布局?那么效果是什么?

答案 1 :(得分:1)

感谢您的回复。将两个图像视图设置到FrameLayout中没有任何效果。

基于线程: How do I disable orientation change on Android?

我使用了选项:

android:configChanges="keyboardHidden|orientation"

在AndroidManifest.xml中,现在工作正常。

-Oakist