You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Navigation Component创建Fragment间Action时遇Unresolved Reference R错误

解决Navigation Component创建Action后出现Unresolved Reference R的问题
  • 检查导航图XML的语法错误
    多数情况是导航图里Action的配置出错,比如ID拼写错误、目标Fragment的ID引用无效,或者XML标签未闭合。打开res/navigation/nav_graph.xml,仔细核对Action的参数:

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

    确保目标Fragment的ID已在导航图中定义,且无拼写错误。

  • 清理并重建项目
    Android Studio的缓存可能导致R文件未及时更新,执行以下操作:

    1. 点击菜单栏Build -> Clean Project
    2. 再点击Build -> Rebuild Project
    3. 若仍无效,尝试File -> Invalidate Caches...,勾选Invalidate and Restart重启AS
  • 核对Navigation依赖配置
    确认build.gradle(Module level)里的Navigation依赖版本正确且同步:

    dependencies {
        def nav_version = "2.7.7"
        implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
        implementation "androidx.navigation:navigation-ui-ktx:$nav_version"
    }
    

    同步Gradle后重新构建项目。

  • 检查Fragment的类路径匹配
    导航图中Fragment的android:name属性必须和实际类的包名、类名完全一致,比如:

    <fragment
        android:id="@+id/fragmentB"
        android:name="com.example.myapp.ui.FragmentB"
        android:label="Fragment B" />
    

    避免包名、类名的大小写或拼写错误。

  • 修正R文件导入
    打开报错的Fragment或Activity文件,检查顶部导入语句是否误导入了android.R,替换为你项目自身的R文件(比如com.example.myapp.R)。

  • 重新生成Safe Args代码
    如果是Safe Args自动生成的代码引发问题,删除build/generated/source/navigation-args目录下的内容,再重新构建项目,让AS重新生成正确的Args类。

内容的提问来源于stack exchange,提问作者andbal23

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 03:34:59