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

Android Studio中Kotlin项目Unresolved reference错误的解决方法

问题:Android Studio中R.layout/R.id引用未解析 + 找不到Rebuild Project选项

使用Android Studio和Kotlin开发首个应用时,出现6个「Unresolved reference」错误,均为R.layout、R.id相关引用未解析。已按示例放置文件,相关路径、代码片段及编译错误如下:

文件路径

  • activity_main.xml:C:\Users\D 11\AndroidStudioProjects\positionapp\app\src\main\res\layout\
  • MainActivity.kt:C:\Users\D 11\AndroidStudioProjects\positionapp\app\src\main\java\com\example\positionapp\

代码片段

activity_main.xml 起始代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <ToggleButton
        android:id="@+id/toggleButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textOn="Ein"
        android:textOff="Aus" />
    <EditText
        android:id="@+id/editText_dt"
        android:layout_width="match_parent"
        android:layout_height="59dp"
        android:hint="dt in Minuten oder Sekunden" />
    <EditText
        android:id="@+id/editText_tnr"
        android:layout_width="match_parent"
        android:layout_height="61dp"
        android:hint="tnr" />
...

MainActivity.kt 第36-46行代码

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    locationViewModel = ViewModelProvider(this).get(LocationViewModel::class.java)

    toggleButton = findViewById(R.id.toggleButton)
    editTextDt = findViewById(R.id.editText_dt)
    editTextTnr = findViewById(R.id.editText_tnr)
    editTextCdz = findViewById(R.id.editText_cdz)
    scrollableText = findViewById(R.id.scrollableText)
...

编译错误输出

...
> Task :app:compileDebugKotlin FAILED
e: file:///C:/Users/D%2011/AndroidStudioProjects/positionapp/app/src/main/java/com/example/positionapp/MainActivity.kt:38:26 Unresolved reference 'layout'.
e: file:///C:/Users/D%2011/AndroidStudioProjects/positionapp/app/src/main/java/com/example/positionapp/MainActivity.kt:42:39 Unresolved reference 'id'.
e: file:///C:/Users/D%2011/AndroidStudioProjects/positionapp/app/src/main/java/com/example/positionapp/MainActivity.kt:43:37 Unresolved reference 'id'.
e: file:///C:/Users/D%2011/AndroidStudioProjects/positionapp/app/src/main/java/com/example/positionapp/MainActivity.kt:44:38 Unresolved reference 'id'.
e: file:///C:/Users/D%2011/AndroidStudioProjects/positionapp/app/src/main/java/com/example/positionapp/MainActivity.kt:45:38 Unresolved reference 'id'.
e: file:///C:/Users/D%2011/AndroidStudioProjects/positionapp/app/src/main/java/com/example/positionapp/MainActivity.kt:46:41 Unresolved reference 'id'.
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:compileDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction

解决方案

一、找到Rebuild Project选项

有两种方式可以触发Rebuild:

  1. 顶部菜单栏点击Build,下拉菜单中选择Rebuild Project;若未显示,先执行File → Sync Project with Gradle Files再重试
  2. 调出右侧Gradle面板(通过View → Tool Windows → Gradle打开),依次展开项目→Tasks→build,双击rebuild任务

二、修复R.layout/R.id未解析错误

这类错误核心是Android Studio未正确生成项目的R类,按以下步骤排查修复:

  1. 检查XML文件语法
    打开activity_main.xml,查看编辑器右侧Issues面板的红色报错,确认所有标签闭合、属性拼写正确(比如dp单位、字符串无转义问题),资源命名符合规范(只能用小写字母、数字、下划线)
  2. 确认R类导入正确
    检查MainActivity.kt顶部的导入语句,确保导入的是项目自身的R类:import com.example.positionapp.R,避免误导入android.R(系统资源类)
  3. 清理+重建项目
    先执行Build → Clean Project清理旧的编译文件,再执行Rebuild Project强制重新生成R类
  4. 修复Gradle同步问题
    若顶部提示Gradle sync failed,点击Sync Now完成同步,同步失败会导致R类无法生成
  5. 检查项目路径
    当前项目路径包含空格(D 11),部分场景下会导致资源生成异常,可尝试将项目迁移到无空格、无特殊字符的路径(如C:\AndroidProjects\positionapp\)
  6. 核对控件ID
    确认MainActivity中引用的editText_cdz、scrollableText等ID,在activity_main.xml中已通过android:id="@+id/xxx"定义完整

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 20:27:02