如何在android中创建Overlay布局

时间:2013-03-15 11:21:27

标签: android

我如何创建像我在背景中附加的布局一样正常的任何布局。当我点击任何布局或返回到该布局时,叠加布局应该带有任何表单字段按钮或文本...任何

提前致谢。

enter image description here

3 个答案:

答案 0 :(得分:4)

使用RelativeLayout或FrameLayout。最后一个子视图将覆盖其他所有内容。

为确保叠加视图位于顶部,您可以在相对布局上调用ViewGroup.bringChildViewToFront()

示例:

<FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/root_view">

    <EditText
        android:layout_width="fill_parent"
        android:id="@+id/editText1"
        android:layout_height="fill_parent">
    </EditText>

    <EditText
        android:layout_width="fill_parent"
        android:id="@+id/editText2"
        android:layout_height="fill_parent">
        <requestFocus></requestFocus>
    </EditText>

</FrameLayout>

在此布局中,editText2将覆盖editText1

答案 1 :(得分:1)

我相信你应该使用FrameLayout,你可以在另一个前面添加一个对象。请在文档中阅读。

答案 2 :(得分:0)

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/root_view"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

        <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
        <!-- other actual layout stuff here  -->

       </LinearLayout>

    <LinearLayout
    android:id="@+id/overlay"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="right" >
    </LinearLayout>

    </FrameLayout>

现在使用android:id = "@+id/overlay"在LinearLayout下添加的任何视图 将显示为重力=右侧

的叠加层

希望这会对你有所帮助