在 RelativeLayout 中添加 ViewPager

Posted

技术标签:

【中文标题】在 RelativeLayout 中添加 ViewPager【英文标题】:Adding ViewPager inside a RelativeLayout 【发布时间】:2015-05-03 19:00:27 【问题描述】:

我正在开发 android ViewPager。我编写了可以创建 ViewPager 的代码以及另一个具有一些控件的布局。我想先展示我的其他控件。然后我想显示视图页(有标签)。

问题是:它首先显示视图页面布局(relativeLayoutVP),然后我的其他控件布局(relativeLayoutControl)显示在 relativeLayoutVP 上。赞this.

下面是我的 xml 代码。一年前已经讨论过这个问题(Android viewpager under RelativeLayout),但没有解决方案。因此,我在这里再次重复。为重复的问题道歉。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_
    android:layout_
    android:background="#fa6a6a" >

<RelativeLayout
    android:id="@+id/relativeLayoutVP"
    android:layout_
    android:layout_
    android:layout_alignParentLeft="true">

    <android.support.v4.view.ViewPager
        android:id="@+id/vp_main"
        android:layout_
        android:layout_>
    </android.support.v4.view.ViewPager>
</RelativeLayout>

<RelativeLayout
    android:id="@+id/relativeLayoutControl"
    android:layout_
    android:layout_
    android:background="#171717" >

    <ImageButton
        android:id="@+id/menu_button"
        android:layout_
        android:layout_
        android:layout_centerVertical="true"
        android:layout_marginLeft="12dp"
        android:background="@drawable/ic_launcher" />

    <ImageView
        android:id="@+id/image"
        android:layout_
        android:layout_
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:background="@drawable/ic_launcher" />

    <ToggleButton
        android:id="@+id/button_search"
        android:layout_
        android:layout_
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true"
        android:layout_marginRight="12dp"
        android:background="@drawable/ic_launcher"
        android:padding="2dip"
        android:textOff=""
        android:textOn="" />

</RelativeLayout>

【问题讨论】:

你需要关闭你的 relativelayout 父标签 我认为这不是问题。实际上我已经关闭了 relativelayout 父标签,不幸的是它没有显示在这里。还有其他建议吗? 我能想到你提供的代码以外的任何东西,对不起 您对此还有什么建议吗? 【参考方案1】:

只是换个地方。将 relativeLayoutControl RealtiveLayout 设置为第一个孩子,并将 relativeLayoutVP RelativeLayout 设置为第二个孩子,就是这样。希望这会对某人有所帮助,因为问题真的很老:)

【讨论】:

以上是关于在 RelativeLayout 中添加 ViewPager的主要内容,如果未能解决你的问题,请参考以下文章

如何在Relativelayout中动态设置控件位置

如何在Relativelayout中动态设置控件位置

[android] 界面切换的核心方法

RelativeLayout系列:动态修改内部View的位置

Android中使用代码动态添加子 view

Android中使用代码动态添加子 view