如何将视图与另一个视图重叠?

时间:2012-03-06 15:28:43

标签: android relativelayout android-framelayout

我想显示一个ViewPager,它将整个屏幕填满其他视图,隐藏它。 第二个视图应设置在屏幕的底部,并在用户在ViewPager上从下到上执行投掷时显示;它将执行一个动画,将ViewPager移动到顶部,直到显示第二个视图。

事实是我不能重叠第二个视图,它始终显示并且从不被ViewPager隐藏。无论我使用什么顺序在xml中配置我的布局(首先声明ViewPager然后是第二个视图,或反过来)或者我使用RelativeLayout或FrameLayout。

以下是我使用的代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

    <LinearLayout
        android:id="@+id/hlist"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:background="@drawable/bg_shelf"
        android:orientation="horizontal" >
    </LinearLayout>

    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true" />

</RelativeLayout>

1 个答案:

答案 0 :(得分:2)

我关注了以下帖子:overlapping views in Android我能够将我的观点与以下xml配置重叠:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <LinearLayout
        android:id="@+id/hlist"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_gravity="center_vertical"
        android:background="@drawable/bg_shelf"
        android:orientation="horizontal" >
    </LinearLayout>


    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignBottom="@id/hlist"
        android:layout_alignLeft="@id/hlist"
        android:layout_alignRight="@id/hlist"/>

</RelativeLayout>