0

我有一个很多人遇到的问题,查看主题中描述的众多问题:有时,R.java 消失了,并且在改变我所做的一些(太长)分钟后,R.java 又回来了。当未生成 R.java 时,调用 R 的行会显示错误:“R 无法解析为变量”。

我知道 R 不是真正的问题,而且我的代码中某处存在一个或多个错误。

我的问题是:如果 Eclipse 没有显示它们,如何本地化这些错误?

如果你和我有同样的问题,先看“R不能解析为变量”?这可以帮助你摆脱那个无情的错误

4

8 回答 8

4

如果您试图查明此错误的根源,请尝试以下操作:

  1. Project -> Clean。这将确保您的错误不是因为构建错误。如果仍然找不到 R,请转到步骤 2。
  2. 您应该Problems在 Eclipse 中有一个选项卡,它将列出打开项目中的所有错误和警告,如下面的屏幕截图所示。如果您看不到“问题”选项卡,请转到Window -> Show View -> Problems
  3. 展开该Errors部分以查看存在哪些问题。在大多数情况下,您会被告知问题、项目、文件和行号。

在此处输入图像描述

于 2013-02-27T14:57:54.637 回答
2

如果 Eclipse 没有显示它们,如何本地化这些错误?

通常,Eclipse显示它们。错误将出现在资源或清单中,通常由包管理器中文件图标上方的红色 X 标志指示。通常,控制台也会包含有关错误的日志消息。

迫不得已,您可以进行命令行构建并查看报告的内容。

于 2013-02-27T14:53:46.487 回答
1

如果您的文件夹或其他 XML 文件R.java中有错误,Eclipse 将不会构建该文件。/res

我建议您检查该文件夹。

于 2013-02-27T14:55:52.683 回答
0

如果 clean 不起作用并且除了缺少 R.java 之外没有错误,请重新启动 Eclipse。

File Menu->restart

于 2013-02-27T15:19:39.843 回答
0

找到了问题,但无法弄清楚如何简单地找到它。< string name="action_settings">Settings< /string>我在复制另一行时意外删除了这一行。

不知道它的用途,但 Eclipse 没有在错误日志中显示它,也没有在我寻找的任何地方显示。

无论如何,谢谢大家的帮助,希望我不会再遇到类似的问题!

于 2013-02-27T16:12:14.073 回答
0

1)查看Package Explorer树中的xml文件是否有错误图标,如果有,修复错误并生成R类。

示例提示:FILL_PARENT 在 API 级别 8 中更名为 MATCH_PARENT;因此,如果您的目标是平台 2.1 (api 7),请将所有出现的事件更改回“fill_parent”

2) 如果您添加了“import android.R;” 试图做一个快速修复,删除该行

3)检查你的AndroidManifest.xml文件,看看包名是否正确。如果您复制了一个示例,这可能是错误的,并且您的问题的根源

4)我有同样的问题。我没有任何文字说明“import something.R”。清理和重建也没有解决问题。

原来是因为布局 xml 文件的名称。这些文件只能包含小写字母、数字或下划线。当我将文件名(以及引用它的所有内容)从 myLayout.xml 更改为 my_layout.xml 时,一切正常。

5)我刚遇到这个问题。这是因为我有一个冗余的菜单资源引用了一个不存在的字符串。删除菜单 XML 并返回 R。

于 2013-05-24T16:26:02.657 回答
0

正如这个链接中所说的 “R不能解析为变量”? 而这个其他 R 无法解决 - Android 错误 有几种解决方案。

在我的情况下,我在 SDK 管理器中配置了代理服务器:工具 > 选项

于 2013-06-04T16:35:32.650 回答
0

在我更新了 sdk 工具和软件包后,我收到了这个错误。我认为更新没有正常工作,经过很多挠头后,我只是尝试使用 sdk 管理器工具再次更新 sdk 包,之后一切正常。

于 2013-06-06T14:36:27.170 回答