【问题标题】:Updated the Navigation framework and getting error - "getActionId overrides nothing"更新了导航框架并出现错误 - “getActionId 不会覆盖任何内容”
【发布时间】:2021-06-02 12:29:15
【问题描述】:

我已将导航框架从 2.3.5 更新到 2.4.0-alpha01 版本。我将它与 Safe Args gradle 插件一起使用。更新后,我开始收到'getActionId' overrides nothing'getArguments' overrides nothing 错误。

我认为这是因为 Safe Args 在生成 Direction 类时不正确地覆盖了 NavDirectionsactionIdarguments 字段。

例如,这是正在生成的:

 public override fun getActionId(): Int =
        R.id.action_navigation_articles_to_articleReaderFragment

这是应该生成的:

public override val actionId: Int = R.id.action_navigation_articles_to_articleReaderFragment

如何让 Safe Args 生成正确的构建器类?

【问题讨论】:

    标签: android android-architecture-navigation android-navigation android-safe-args


    【解决方案1】:

    原来这是一个已知的bug 有一段时间了。

    在我发布此问题一天后,2.4.0-alpha02 Navigation 已发布并修复了此错误:

    尝试生成方向时,Safe Args 不再崩溃 Kotlin 中的属性。 (Id2416, b/188564435)

    只需更新到 2.4.0-alpha02 版本即可修复。

    【讨论】:

    • 最新版本 - 2.4.0-alpha06
    【解决方案2】:

    更新到 2.5.0-alpha01 版本和 wrapper-properties distributionUrl -7.0.2-bin.zip 进行修复。

    【讨论】:

    • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
    猜你喜欢
    • 1970-01-01
    • 2019-03-10
    • 2019-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多