3

我有ViewPagerPagerTabStrip当从一个页面滑动到另一个页面时,寻呼机和选项卡都将一起移动。(如谷歌支付)

它工作正常。现在所有的页面都有共同的数据,并且滑动时会改变一部分,所以我不想滑动整个页面,只是要改变的区域。

正如您在下图中看到的那样,滑动页面时只会影响红色区域,绿色区域不会移动。

我已经搜索了很多,但我找不到任何有用的东西,任何帮助将不胜感激。

浏览器代码:

<android.support.v4.view.ViewPager
            android:id="@+id/pager"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

        <android.support.v4.view.PagerTabStrip
                android:id="@+id/pager_title_strip"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="top"
                android:background="#FFFFFF"
                android:textColor="#003366"
                android:paddingTop="4dp"
                android:paddingBottom="4dp"/>
    </android.support.v4.view.ViewPager>
4

2 回答 2

2

使用swipeyTabs就是答案。使用时的问题PagerTabStrip是,PagerTabStrip将在ViewPager标签内,请参阅以下代码:

<android.support.v4.view.ViewPager
            android:id="@+id/pager"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

        <android.support.v4.view.PagerTabStrip
                android:id="@+id/pager_title_strip"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="top"
                android:background="#FFFFFF"
                android:textColor="#003366"
                android:paddingTop="4dp"
                android:paddingBottom="4dp"/>
    </android.support.v4.view.ViewPager>

所以你不能把它们分开。但是当使用 SwipeyTabs 时,每个标签将作为一个单独的部分,请参见以下代码:

<net.peterkuterna.android.apps.swipeytabs.SwipeyTabs
        android:id="@+id/swipeytabs"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        swipeytabs:bottomBarColor="#ff96aa39"
        swipeytabs:bottomBarHeight="2dip"
        swipeytabs:tabIndicatorHeight="3dip"
        android:background="#ff3b3b3b"/>

    <android.support.v4.view.ViewPager
        android:id="@+id/viewpager"
        android:layout_width="fill_parent"
        android:layout_height="0px"
        android:layout_weight="1" />

在这种情况下,您可以通过处理ViewPagerSwipeyTabs作为两个部分来自定义您的布局。

在您的情况下,我想您可以将SwipeyTabsandViewPager放在图像中的红色位置,而在绿色区域中,您必须根据需要调整它们。

我发现这些链接可能会对您有所帮助。祝你好运。

于 2013-02-18T11:43:18.787 回答
1

免责声明:我误读了您的帖子。将 与 分开ViewPager可能PagerTabStrip行不通,或者可能需要另一种方法。我会在这里留下答案,以防万一它可能有帮助。

您可以通过将 嵌入到ViewPager单独的片段中并在下方放置另一个独立的片段来实现这一点,这不受ViewPager.

基本上,您的主要活动由两个片段组成:一个包含ViewPager(包含更多片段),另一个包含您的固定视图。

要正确地做到这一点,这需要对嵌套片段的支持,这仅在 Android 4.2 或最新支持库(修订版 11)中可用。

请注意,在为 实例化适配器时ViewPager,您需要使用FragmentManager返回的getChildFragmentManager().

于 2013-02-14T08:20:31.037 回答