2011-06-15 60 views
2

我该怎么处理它?我做了一个全新的项目,但是错误在这里:R无法解决。 错误位于setContentView(R.layout.main);行。我在Eclipse和NetBeans中也有R无法解析的错误

+1

是否生成R.java文件? ADT从你的资源为Java项目生成这个文件,并把它放在gen/ /R.java – antlersoft 2011-06-15 19:46:33

+0

是的,如果它不是基督徒说的那么它生成 – Zwiebel 2011-06-15 19:56:19

回答

5

第一: 您的错误意味着该文件R.java不产生,所以你应该清理项目(项目=>清洗=>检查项目,并单击OK),

二:可能是你的文件R.java已经生成,在这种情况下,检查您的导入,如果您发现:import android.R;用自己的R级改变,例如:import com.yourpackage.R;

希望它可以帮助

3

让我猜...你:

import android.R; 
// or nothing 

请确保您有:

import your.package.R; 

,当然还有,确保你有一个在你的res/layout文件夹,名为main.xml文件。

+0

。确保在尝试访问它之前先建立它。 – atbebtg 2011-06-15 19:43:03

3

您可以通过几件事来解决它。首先确保您的导入中没有导入android.R。

资源可能尚未建立。如果您构建项目,我发现错误往往会消失。

右键单击该项目,单击生成项目,或者如果您没有可用的生成项目,则全部生成也会生效。

如果不工作,你可以做的另一件事是导入“R”

import <your package path: for example com.test.R> 

好运。

1

如果您的AndroidManifest.xml声明您的软件包与您的源代码所在的Java程序包不同(如果管理正确,这是完全合法的),您必须从清单中声明的​​软件包名称中导入R.

1

问题是没有生成R文件,这意味着在某些项目文件中出现错误,最可能是在XML布局文件中。请检查他们的错误,并清理您的项目(在Eclipse项目 - >清洁),你应该没问题。 (注意:你不需要明确导入R文件,即有import something.R;(除了在@mah定义的情况下))。

1

我在Eclipse中也有类似的错误,并通过将YourProject属性> Java构建路径>排序和导出和移动固定它YourProject/src和YourProject/gen到底部。我.classpath文件是:

<?xml version="1.0" encoding="UTF-8"?> 
<classpath> 
    <classpathentry kind="src" path="src"/> 
    <classpathentry kind="src" path="gen"/> 
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/> 
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/> 
    <classpathentry kind="lib" path="libs/cordova.jar"/> 
    <classpathentry kind="output" path="bin/classes"/> 
</classpath> 

,现在是:

<?xml version="1.0" encoding="UTF-8"?> 
<classpath> 
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/> 
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/> 
    <classpathentry kind="lib" path="libs/cordova.jar"/> 
    <classpathentry kind="src" path="src"/> 
    <classpathentry kind="src" path="gen"/> 
    <classpathentry kind="output" path="bin/classes"/> 
</classpath> 

希望这是有帮助的人。

3

在NetBeans中,我通过放置import android.R.*来解决此问题。星号很重要!

+0

通常完全取消导入,然后使用智能感知获取新导入也解决了这一问题。 – Neil 2012-09-24 08:53:53