我刚刚下载并安装了新的Android SDK。我想创建一个简单的应用程序来测试它。

向导创建了以下代码:

package eu.mauriziopz.gps;

import android.app.Activity;
import android.os.Bundle;

public class ggps extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

但是Eclipse给出了错误

R不能被分解

在网上

setContentView(R.layout.main);

Why?

PS:我在res/layout/下有一个名为main.xml的XML文件。


当前回答

对我来说,我删除了“import android.R;”,它解决了我所有的问题。真是个噩梦!!

其他回答

I had tried all of the above with no prevail. It turned out PhoneGap was causing a conflict with the Android SDK. After uninstalling PhoneGap, the Resources file started regenerating again. Another project, needed PhoneGap so I re-installed, and once again, the Android project (a different project) stopped auto-generating the R file - Build Automatically was checked, did the Clean, and restarted Eclipse - no dice. I removed PhoneGap and it was working once again. This was PhoneGap v 1.5 with the MDS 1.1 plugin for Eclipse.

我有Android 8的例子,并试图使用Android 7 SDK。当我关闭项目并重新打开应用程序文件夹并选择使用Android 8 SDK时,它能够找到R文件。希望这能有所帮助。

发生这种情况的另一种方式是,从其中一个示例启动一个新项目。当您稍后决定将包名从com.example.android.foo更改为您自己的域时,您将需要修改清单和单个.java文件中的几个值。

如果您使用的是Eclipse,请找到.java文件的包语句并选择QuickFix。这里可能有几个选项,但你想要的是指示“移动‘foo.java’到打包‘com.youdomain.android.yourapp’”的选项。保存文件,它可以自动构建或做其他人建议,并尝试“项目->清洁”。

只是清理和重建你的项目有时会有帮助

如果清理项目不起作用,如果xml文件没有问题(如果它是一个新项目)。然后转到Androidmanifest.xml,编辑它并在行之间添加一些空格,保存它。现在清理项目,错误将消失。

这是因为陈旧的R.java文件。当我们编辑android manifest文件时,再次创建R.java。