记DrawerLayout+ViewPager 侧滑和page切

2020-02-19  本文已影响0人  白米饭加菜
最后实现的正常的页面效果:
正常的效果.GIF

问题出在xml布局层级关系,只要层级关系布置好就行了,关键点就是 TabLayout+ViewPager必须在同一个ViewGroup里,DrawerLayout放在xml代码最后写,大概就是这样:

        <!-- TabLayout+ViewPager布局 -->
    <androidx.appcompat.widget.LinearLayoutCompat
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:orientation="vertical">
        <com.google.android.material.tabs.TabLayout
            android:id="@+id/tabs"
            android:layout_width="match_parent"
            android:layout_height="30dp"
            app:tabGravity="center"" />
        <androidx.viewpager.widget.ViewPager
            android:id="@+id/view_pager"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1" />
    </androidx.appcompat.widget.LinearLayoutCompat>
        <!-- 侧滑抽屉 -->
    <androidx.appcompat.widget.LinearLayoutCompat
          android:layout_width="@dimen/drawer_width"
          android:layout_height="match_parent"
          android:layout_gravity="start"
          android:orientation="vertical">  
    </androidx.appcompat.widget.LinearLayoutCompat>

其实这个页面是在app里很常见的一个模式,这两货是不存在什么手势冲突的(其他页面实现不谈),只是我一个小白从别人拿接手了一个写了一点的项目,然后。。悲剧就发生了而已,昨天花了一个下午找这个问题(真的就还以为是侧滑手势导致了viewpage滑动切换页面手势失效了),今天早上决定还是从xml布局文件看起,果然同行坑同行哈哈哈哈哈。也算是学习了,感觉良好。

上一篇 下一篇

猜你喜欢

热点阅读