【问题标题】:Android SafeArgs Navigation Unreslved Reference camelcase kotlin vs underscore xmlAndroid SafeArgs Navigation Unreslved Reference camelcase kotlin vs underscore xml
【发布时间】:2022-10-04 23:41:27
【问题描述】:

我有一个片段使用:

 val action = LoginFragmentDirections.actionLoginToHome()
        findNavController().safeNavigate(action)

导航图 XML 声明为:

<fragment
        android:id="@+id/loginFragment"
        android:name="com.myapp.LoginFragment"
        android:label="login_fragment"
        tools:layout="@layout/login_fragment">

        <action
            android:id="@+id/action_login_to_home"
            app:destination="@+id/homeFragment"
            app:launchSingleTop="true"
            app:popUpTo="@navigation/nav_graph_main"
            app:popUpToInclusive="false" />

    </fragment>

Android Studio 编译器不会抛出任何错误,我什至可以使用 cmd click 从 actionLoginToHome() 函数导航到 XML 文件。但是,在构建应用程序时,gradle 编译会引发错误:

**Unresolved reference: actionLoginToHome** 

根梯度:

classpath "androidx.navigation:navigation-safe-args-gradle-plugin:2.5.2"

模块摇篮:

plugins {
    id 'com.android.application'
    id 'kotlin-android'
    id 'kotlin-kapt'
    id 'androidx.navigation.safeargs.kotlin'
}

...依赖关系..

implementation "androidx.navigation:navigation-fragment-ktx:2.5.2"
implementation "androidx.navigation:navigation-ui-ktx:2.5.2"

【问题讨论】:

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


    【解决方案1】:

    好的解决了,

    该图是几个导航的嵌套 XML,嵌套文件中的一个导航片段与有问题的导航片段具有相同的 ID 和操作,可能是由于错误的复制粘贴。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-23
      • 2018-03-10
      • 2016-08-01
      • 2018-04-06
      • 2021-11-19
      相关资源
      最近更新 更多