我在Android应用程序中重叠视图有问题

时间:2010-10-19 20:24:22

标签: android

我在一个linearlayout中包含一个导航栏,其中包含另一个relativelayout,如下所示。当导航栏位于顶部时,此相对布局形成整个屏幕。我在导航栏中添加了一个按钮,并在单击按钮时可以看到列表视图。问题是:当点击按钮时,我希望列表显示在下面的屏幕内容之上,而实际上是按下屏幕内容并且没有重叠。我已经尝试了所有示例中的相对布局和framelayout,但没有运气。请帮忙:。

<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:layout_alignParentTop="true" android:background="@drawable/xxx">

<include android:id="@+id/navbarx" layout="@layout/navbar" /><<<-- has the button and the listview for it.
<RelativeLayout android:layout_width="fill_parent"
android:layout_weight="1" android:layout_marginTop="10dp"
android:layout_height="0dp" android:layout_gravity="top|fill">

<ListView android:id="@android:id/list"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:background="#00ffffff" android:layout_marginLeft="14dp"
android:layout_marginRight="5dp" android:layout_marginTop="10dp"
android:layout_marginBottom="40dp" android:drawSelectorOnTop="true"
android:divider="#00ffffff" android:listSelector="@drawable/yyy"
android:scrollbarThumbVertical="@drawable/vertical_slider"
android:headerDividersEnabled="false" android:layout_alignParentTop="true" android:layout_alignWithParentIfMissing="true"/>

</RelativeLayout>

</LinearLayout>"

1 个答案:

答案 0 :(得分:0)

在LinearLayout中,事物永远不会重叠。如果您希望包含的导航栏显示在相对布局的顶部,则需要将它们放在相对布局或框架布局中。例如:

<FrameLayout . . . >
  <RelativeLayout . . .">
    <ListView android:id="@android:id/list" . . ./>
  </RelativeLayout>

  <include android:id="@+id/navbarx" layout="@layout/navbar" />
</FrameLayout>

这将导致包含的布局在使用ListView的relativeLayout之上。