带有片段的 NavigationDrawer 内的 Android TabLayout

Posted

技术标签:

【中文标题】带有片段的 NavigationDrawer 内的 Android TabLayout【英文标题】:Android TabLayout inside NavigationDrawer with Fragments 【发布时间】:2021-02-28 11:18:28 【问题描述】:

我正在使用带有片段的 NavigationDrawer。现在我的导航抽屉中有 8 个菜单,但我只想在两个或三个片段中使用选项卡布局。

Navigation_Menu Image

我在菜单中名称为部门的片段中使用选项卡布局。 所以我使用 ViewPager 和 PagerAdaper 所以我需要在 Main Activity 或 fragmentClass.java 中编写代码

我在 Stack Overflow 上使用代码片段时遇到了问题,所以这里是我的代码要点:

    Mainactivity.java - https://gist.github.com/Faizi-alpha/c03df8bc9795c10e3c97d68d9f82c6cb Fragment_Department.java - https://gist.github.com/Faizi-alpha/e166f914727af88fb70e084f67f80fa5 FragmentDepartmentView.xml - https://gist.github.com/Faizi-alpha/238386596515661bd00043b61966220a

我应该在哪里编写 Java PagerAdapter 和 ViewPager 代码?我尝试在 DepartmentFragment.java 中对其进行编码,但在此类中没有得到“getSupportFragmentManager()”。

是否需要处理 mainActivity.java 中的每个片段??

【问题讨论】:

你试过用getChildFragmentManager()吗? 不,我不知道 由于您只希望 TabLayout 在特定片段内,因此它必须在该片段内 Idk 如果它是一个错字,但在要点中,FragmentDepartment.java 与其公共类 fragment_department 不同。你不会因此而出错吗? 另外,您的 FragmentDepartmentView.xml 与您在 Fragment 中膨胀的不同,即 fragment_department 【参考方案1】:

使用 getChildFragmentManager() 代替 getSupportFragmentManager()。

【讨论】:

以上是关于带有片段的 NavigationDrawer 内的 Android TabLayout的主要内容,如果未能解决你的问题,请参考以下文章

Android:导航抽屉片段内的Viewpager

带有嵌套片段的导航抽屉 (ViewPager)

从片段中隐藏 NavigationDrawer 和 ActionBar

带有 TabLayout 的片段内的 ScrollView 不滚动,为啥?

带有边距和页面转换器的片段内的 ViewPager 无法正确呈现

Android Jetpack导航,另一个主机片段内的主机片段