android - 升级到导航版本 2.4.0-alpha02 后“getActionId 不会覆盖任何内容”
问题描述
从版本 2.3 升级到 2.4.0-alpha02 后,我遇到了这个问题。新版本应该包含一个修复,但它对我不起作用。作为参考,我的操作定义如下:
<action
android:id="@+id/action_from_to_destination"
app:destination="@id/destination" />
解决方案
感谢@ianhanniballake,我弄清楚了问题所在。所有 androidx.navigation 依赖项都应具有相同的版本。在我的情况下,Safe Args 插件仍然是 3.5 版。通过将其升级到 2.4.0-alpha02 解决了问题。
如果有人遇到同样的问题,您需要这样做以避免将来出现类似问题:
在build.gradle在 buildscript下定义以下内容:
ext.navigation_version="2.4.0-alpha02"
并在依赖项下:
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigation_version"
在build.gradle (:app)中,在依赖项下:
implementation "androidx.navigation:navigation-runtime-ktx:$navigation_version"
implementation "androidx.navigation:navigation-fragment-ktx:$navigation_version"
implementation "androidx.navigation:navigation-ui-ktx:$navigation_version"
现在您只需将导航版本更改一处。
推荐阅读
- r - 在 RStudio 中给定一个包和插件名称,获取被调用的函数
- python - asyncio:我可以在异步中包装同步 REST 调用吗?
- c# - 尝试在 Active Directory 中显示用户的上次登录时获取“指定的强制转换无效”
- asp.net-mvc - 如何从连接 3 个表并采用 3 个不同参数 asp.net MVC 的存储过程中获取数据
- python - pandas loc 分配中意外的行发生了变化
- c++ - 无法在一个程序中使用 std::size()
- flutter - 如何修复此错误意外的空值?
- fastlane - Fastlane CI/CD 容器设置
- cmake - 如何在自定义目标调用的子进程中使用 CMake 缓存变量?
- android - 当另一个变量触发实时数据观察器