【问题标题】:“getActionId overrides nothing” after upgrading to navigation version 2.4.0-alpha02升级到导航版本 2.4.0-alpha02 后“getActionId 不会覆盖任何内容”
【发布时间】:2021-06-03 21:50:48
【问题描述】:

我从 2.3 版升级到 2.4.0-alpha02 后遇到了这个问题。 新版本应该包含fix,但它对我不起作用。 作为参考,我的操作定义如下:

<action
        android:id="@+id/action_from_to_destination"
        app:destination="@id/destination" />

【问题讨论】:

  • 你重建你的项目了吗?
  • 是的,我做到了@Zain
  • 请注明您定义 Safe Args 插件版本的位置 - 这看起来您仍在使用旧版本的插件。
  • 谢谢@ianhanniballake,您的回答一如既往地准确。我忘了升级 Safe Args 插件。问题已解决

标签: android android-architecture-navigation android-navigation


【解决方案1】:

感谢@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"

现在您只需将导航版本更改一处即可。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-05
    • 2013-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-10
    • 1970-01-01
    相关资源
    最近更新 更多