如何在 ViewPager2 中使用 PagerTabStrip

And*_*arl 7 android pagertabstrip android-viewpager2

我想使用,ViewPager2因为它应该替换ViewPager,我希望摆脱一些我遇到的问题ViewPager

我想做这个:

<androidx.viewpager2.widget.ViewPager2
    android:id="@+id/detail_pager_view"
    android:layout_height="match_parent"
    android:layout_width="match_parent" >

    <androidx.viewpager.widget.PagerTabStrip
        android:id="@+id/detail_pager_strip"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:layout_width="match_parent" />

</androidx.viewpager2.widget.ViewPager2>
Run Code Online (Sandbox Code Playgroud)

ViewPager2抱怨它不能有孩子。在另一方面,如果我将PagerTabStripViewPager2报告它必须是一个孩子ViewPager

所以似乎PagerTabStripViewPager2. 我对么?

目前是否有任何解决方案?(除了自己写PagerTabStrip

Gil*_*rra 1

参考这个,需要使用TabLayout

Android中ViewPager2的使用

<com.google.android.material.appbar.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

    <androidx.appcompat.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:layout_scrollFlags="scroll|enterAlways"
            app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>

    <com.google.android.material.tabs.TabLayout
            android:id="@+id/tabs"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>
</com.google.android.material.appbar.AppBarLayout>

<androidx.viewpager2.widget.ViewPager2
        android:id="@+id/viewpager"
        app:layout_anchor="@id/tabs"
        app:layout_anchorGravity="bottom"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
/>
Run Code Online (Sandbox Code Playgroud)