自定义导航抽屉的导航组件

4
我正在使用Navigation Component库。但现在我遇到了一个问题,我已经创建了带有RecyclerView的自定义导航抽屉。现在我想通过适配器项单击移动到下一个片段。如何使用Navigation Component库实现这一点。
以下是我的适配器项单击代码。我已经尝试创建导航单击事件,但它不起作用。
override fun onItemClick(view: View, position: Int) {
    when(position){
        0->{
            Navigation.createNavigateOnClickListener(R.id.homeFragment)
            binding!!.drawerLayout.closeDrawer(GravityCompat.START)
        }

        1->{

        }
    }
}

同样的问题,你找到任何解决方案了吗? - hassan moradnezhad
@hassanmoradnezhad 没有人找到解决方案,所以我切换到默认导航。 - Deepak Rana
我制作了一个菜单,其中的项目具有相同的id...然后我将菜单设置为底部导航,并将底部导航的可见性设置为gone...之后我将navController连接到底部导航,然后与您的代码相同,我切换了底部导航的位置并启用了其项目。 - hassan moradnezhad
1个回答

1

使用

Navigation.findNavController(view).navigate(R.id.homeFragment)


这里的view是什么? - Deepak Rana
如果您在片段中使用此代码,则可以在onViewCreated中访问视图。如果您在活动中使用此代码,则必须使用Navigation.findNavController(this, R.id.nav_host_fragment)。 - hassan moradnezhad
崩溃:"ID不代表此活动中的视图"。 - Taslim Oseni

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接