NavigationView菜单点击事件无响应

741 阅读1分钟

今天使用AndroidStudio默认创建Navigation Drawer Activity。

结果,创建的工程,NavigationView中菜单无法响应点击事件。

搞了很久才发现原来是默认的布局文件的问题

这里要把NavigationView放在布局文件的最下面,即在保证NavigationView在UI的最上面。

真是坑啊,系统默认的居然这么搞。

而且最新的代码,不需要再手动设置navigationView.setNavigationItemSelectedListener来处理Menu的点击事件。 下面的代码就可以实现

NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
NavigationUI.setupWithNavController(navigationView, navController);

后面有时间会分析下NavigationView源码。