确定, 我正在开发一个新的应用程序,只要我使用相对视图,一切正常。但是,我想要一个标签式布局,所以我切换了我所拥有的(因为我刚从数据库和设置工作中读取它而不是很多)到标签视图。从那时起,任何具有任何R.语句的类都有“无法解析的R”错误。我正在遵循Android“Hello Views”教程中的教程,所以我假设这不是问题(但它仍然可以)。
答案 0 :(得分:11)
我有一些建议:
确保除R相关错误外没有任何其他错误。在Eclipse,Android Tools - >中右键单击项目文件夹。修复项目属性。
检查以确保您导入了正确的R.有时可以导入默认的Android.R。
检查布局XML文件中的错误。
答案 1 :(得分:8)
答案 2 :(得分:2)
如果您正在使用Eclipse,请尝试执行Project / Clean并重新构建项目。它有时在Android项目中有类路径的随机问题。
答案 3 :(得分:1)
除了之前答案中的重要建议外,请确保您的Android目标已设置:
编辑:一年后,我找到了另一个原因。我的drawable文件夹中有一个.jpg图像,其名称与.png图像相同。在我的代码中引用此图像必定会混淆程序,并且它会出现“R无法解析”错误。
答案 4 :(得分:0)
如果'res'目录中的任何内容使用非法字符命名,则可能会发生这种情况。
请注意,android只允许使用小写字母(没有大写!!!),数字和下划线。这就是全部!
几乎每个操作系统都允许使用其他字符,因此将文件移动到“res”目录中很容易造成此问题。
修正?重命名文件。通过右键单击包或项目浏览器中的文件并选择Refactor-> Rename来完成此操作。您可能需要在之后清理您的项目,但要注意可能会进入的可怕的“import android.R”。
祝你好运! 斯科特答案 5 :(得分:0)
我也有样本问题,这对我有用。
1。)检查Layout XML中是否有任何错误。特别是在文字和标题方面
你应该使用
android:text="@string/hello"
而不是
android:text="hello"
.2)清理你的项目
.3)重启Eclipse
答案 6 :(得分:0)
检查您认为正在使用的所有字符串(例如“@ string / Hello_world”)是否实际存在于strings.xml文件中。我在使用android:title="@string/Navigation"
声明菜单项后得到OP错误,但我没有将<string name="Navigation">Navigation</string>
添加到strings.xml
答案 7 :(得分:0)
你应该导入你自己的项目R class而不是orroids默认的R class ie your.app.package.R
这将使您的类中的res文件夹下定义的值。在刷新之后再清理你的项目。
答案 8 :(得分:0)
在我的情况下,它是因为我重构了我的项目并在文件夹结构中移动了一些类。这些类无法像往常一样找到R,因为它基于根源文件夹。
答案 9 :(得分:-2)
您需要确保导入R.如果您的主程序包是com.example,请尝试在文件顶部导入“com.example.R”。出于某种原因,eclipse不会为你做这件事。