Android 不能同时使用'BottomNavigationView'和'ViewPager'以及'TabLayout'

Android 不能同时使用'BottomNavigationView'和'ViewPager'以及'TabLayout',android,android-fragments,android-viewpager,android-tablayout,bottomnavigationview,Android,Android Fragments,Android Viewpager,Android Tablayout,Bottomnavigationview,我在互联网上做了很多研究,结论是我们不能同时使用BottomNavigationView和ViewPager和TabLayout。但是有很多应用程序,比如Instagram,合并了它们。 我的问题是,他们怎么能做到这一点?他们是否使用了特殊的技巧?将bottomNavigationView与ViewPager结合使用并不困难 在布局中声明这两个控件 设置viewPageAdapter并向其中添加片段,将adapter设置为viewPager 设置bottomNavigationView覆盖onN

我在互联网上做了很多研究,结论是我们不能同时使用
BottomNavigationView
ViewPager
TabLayout
。但是有很多应用程序,比如Instagram,合并了它们。
我的问题是,他们怎么能做到这一点?他们是否使用了特殊的技巧?

将bottomNavigationView与ViewPager结合使用并不困难

  • 在布局中声明这两个控件
  • 设置viewPageAdapter并向其中添加片段,将adapter设置为viewPager
  • 设置bottomNavigationView覆盖onNavigationItemSelectedListener,现在将设置viewPagerAdapter的当前项

  • 您是否需要更详细的代码示例,或者您已经准备好摇滚了?

    您可以在“活动”中创建bottomNavigationView,并在单击其中的某个项目时将此代码片段附加到其中:

            FragmentManager fragmentManager = getSupportFragmentManager();
            FragmentTransaction transaction = fragmentManager.beginTransaction()
                    .replace(frameId, fragment, "fragTransaction");
            transaction.commit();
    
    然后用tabLayout和viewPager创建一个片段来控制其中的子片段,您最常用的是控制viewPagerAdapter中的片段

        FragmentManager fragmentManager = getChildFragmentManager();
        FragmentTransaction transaction = fragmentManager.beginTransaction()
                .replace(frameId, fragment, "fragTransaction");
        transaction.commit();
    

    您是否尝试将它们结合使用?您如何证明Instagram使用了这三个类?除了
    ViewPager
    ,还有其他水平滑动解决方案,如
    RecyclerView
    。有很多选项卡库。有各种底部导航库。也许他们使用了其他的组合,而不是你认为不能一起使用的三个组合。这正是我的问题。他们是否使用其他库?您是否有其他解决方案让我拥有与instagram相同的功能?您的方法对于BouumNavigation本身使用查看页面设置的情况非常有用…我希望在BottomNavigationView中的一个项目中有一个查看页面,该项目已使用表格布局设置。