Eclipse不能识别Android的“R.id …”

任何想法,为什么有时Eclipse日久,并不认识代码呢? 下面的代码中的“R”在5分钟前没有红色的波形,我没有改变代码。 这种情况经常发生在Eclipse上,通常我会closures它并重新启动它,这是很好的…去这个时候不行。

// Initialize view elements mSearchBox = (EditText) this.findViewById(R.id.edittext_search); mSearchButton = (Button) this.findViewById(R.id.button_search); 

Solutions Collecting From Web of "Eclipse不能识别Android的“R.id …”"

这听起来像R类需要重新生成,请尝试更改布局文件并保存,以便项目重build。

你不小心导入android.R。*; 在任何情况下? 我导入这一个,这使得Eclipse不能识别所有其他生成的R类,请确保您从您的项目中导入一个:

 import <project_name>.R; 

这是Android中很常见的问题,

  • 进入项目菜单
  • select“干净”选项。
  • 确保“自动构build选项已被选中”

完成后,你的R.java的错误将得到解决。

至于Android开发工具(ADT)14,资源字段如R.id. 在库项目中定义时不再是常量。 这是必要的,使图书馆项目可重用,而不重新编译它们。

R.id.有一个简单的解决方法。 你知道是正确的,但Android认为这是不正确的。 (假设你的.xml文件是正确的,你的java代码引用了正确的资源,而你没有“import android.R;”语句)

  1. 将光标置于switch语句上并右键单击它。
  2. selectQUICK FIX。 Eclipse将把你的交换机的脚本转换成if-else if-else语句。
  3. 这应该解决R.id. 问题。

我遇到了同样的问题。 我所做的只是抹去“导入android.R”语句,Eclipse自动给我的import,我需要的。 一旦我点击保存,所有的错误都消失了。 我挣扎了三天,试图弄清楚这一点。

顺便说一句 – 确保你所有的文件做到这一点。

除了上面的答案之外,如果您还没有在AndroidManifest.xml中声明包,或者声明了错误的包,则会发生此错误。 确保你有

 <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.applicationname" ... 

如果你觉得你的代码是正确的,那么你仍然得到这个错误。

右键单击项目>>生成项目,这个错误将会消失。

您也可以保留一个项目自动build立的设置

点击Project Tab >>自动生成。

希望这能解决你的问题!

你有没有添加任何图像文件到您的绘图文件夹? 具有无效文件名的图像文件也可能导致相同的问题。