我刚刚从Windows平台切换到Mac平台,当我尝试构建我的应用程序时,我得到了这样的消息:
Unresolved reference. None of the following candidates is applicable because of receiver type mismatch:
public fun `Activity;`.findNavController(viewId: Int): `NavController;` defined in androidx.navigation
public fun `View;`.findNavController(): `NavController;` defined in androidx.navigation
字符串
错误就在这一行:
bSettingsLogout.findNavController().navigate(R.id.authenticationActivity)
型
在Windows上,我使用的是旧的3.3金丝雀版本,但在开发人员网站上,导航组件没有任何变化。
我不确定这是Mac的问题,还是Android Studio金丝雀6的错误。
任何帮助将不胜感激!
3条答案
按热度按时间dm7nw8vv1#
findNavController
有两种实现:public static NavController findNavController (View view)
和public static NavController findNavController (Activity activity, int viewId)
个但你用
字符串
你缺少必要的参数
jgovgodb2#
是的,这只是一个bug与最新版本的Android Studio Canary。至少,回滚到以前的Canary版本为我解决了这个问题
我运行的是Windows,所以这不是Mac的问题
sy5wg1nm3#
在我的情况下,我有2个不同的导航文件相同的id,我已经改变了其中之一,明确,再次建立,为我工作
字符串