Android Studio 2.1 无法解析符号 'R'

Android Studio 2.1 Cannot resolve symbol 'R'

Android Studio 2.1, Java V8 更新 91,Gradle 2.1.0 .

我知道这个问题在这里已经被问过很多次了,但是 none 的推荐解决方案是可行的。

在 Emulator 上编译准备 运行 后突然,我的 IDE 在 R.id 属性处给出错误。即使我没有对文件进行任何更改,每个 Java 个文件都会突然出现相同的错误。

我尝试创建一个新项目,看看情况是否有所不同,但错误不断出现。在我看来,这可能又是内部错误。即使我刚刚更新了我的 IDE

Java 文件;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_science);

    list_View = (ListView) findViewById(R.id.maintable); 
    String[] Days = new String[] { "Sunday", "Monday", "Tuesday", "Wednesday","Thursday", "Friday", "Saturday"};
    dayList.addAll(Arrays.asList(Days));
    adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, dayList);
    list_View.setAdapter(adapter);

    NfcAdapter nfc = NfcAdapter.getDefaultAdapter(this);

    if (nfc.isEnabled()) {
        adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, dayList);
        Toast.makeText(this, "NFC turned ON", Toast.LENGTH_SHORT).show();
    }

    else {
        Toast.makeText(this, "Please turn On NFC", Toast.LENGTH_SHORT).show();
    }

}

R是错误。

XML 文件关联到 Java;

<ListView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/maintable"
    >
</ListView>

这又是内部错误吗?

尝试同步项目,转到工具 > Android > 将项目与 Gradle 文件同步

更新

如果您使用的是 Android Studio 3.3,请使用 Sync Project with Gradle Files 图标

通过转到 Build > Clean ProjectBuild > Make Project

尝试执行清理和重建

如果您正在使用 google 播放服务并且您的 compilesdk 版本低于 23,请下载新的 sdk 并更新您的编译版本。之后尝试清理和重建。会修复

我尝试将 Gradle 版本从 2.1.0 更改为 2.0.0,即使是 AS ver 2.1,忽略 Instant 运行 性能及其计算结果。小 R 错误现在消失了。现在,我试着改回 2.1.0,R 错误也消失了..!! 有时这件小事让我有点发疯。

真丢脸。

也许错误可能是由工具引起的,尝试从工具 > Android > SDK 管理器安装 Android SDK 构建工具。 或者这个错误可能是由于将 activity 添加到与根目录不同的名称空间引起的,您可以尝试 >>Import com.example.MyApplication.R; 或者您也可以在 Build > Clean Project 或 Build > Rebuild Project

中清理或重建您的项目

你试过重建项目去 构建>重建项目 并在不执行 Clean 项目的情况下执行它 我遇到了同样的问题,它对我有用

有时 R.java class 不会在 xml 文件(如 activity_main.xml)中出现错误时创建。例如,如果您更改某些具有无法更改的保留字的 属性名称 。 像这样:如果您将名为 id 的属性更改为另一个名称,例如
id_A_Word_With_Error_Here 在此代码中,可以是 activity_main.xml 的一部分,您的错误(R class 未创建)可能会发生。

<android.support.v7.widget.RecyclerView
            android:id="@+id/messageRecyclerView"

并且出现如下错误:

  <android.support.v7.widget.RecyclerView
            android:id_A_Word_With_Error_Here="@+id/messageRecyclerView"

如果清理、重建没有工作并且像 import com.something... 这样的导入没有错误,我的建议是在 xml 文件中搜索错误。

我刚刚经历了这场噩梦。最终将所有 xml 代码删除到记事本,直到它被修复。然后重新引入部分代码,直到问题出现。 回想起来,这一切都是从我使用写字板粘贴一些代码开始的。显然,写字板包含不同的编码或其他一定要避免的东西。 无论如何,只需检查 xml 中的白色 space,将其全部删除以消除任何隐藏字符。

这个问题我见过很多次了。正确的解决方案是:

当您键入 R 时,Android Studio 会为您提供许多不同的名称空间供 R 选择,看起来像 R(***.***.***),但您真正need是以***.myProject结尾的命名空间。 (注意:myProject 是您的项目名称),例如:R(com.example.milka.demoProject).

如果您选择任何其他命名空间,您将收到错误消息,因此您必须删除不需要的 import,然后重新选择您的 R