我刚刚下载并安装了新的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文件。


当前回答

检查上面的类文件导入,确保没有android的导入。R,如果它有,然后删除它,然后按Ctrl + Shift + o,选择packagename。R不导入另一个。

其他回答

尝试使您的新XML布局文件名小写。例如,使用my_file.xml而不是myFile.xml。

确保你安装了Android构建工具表单sdk管理器

项目右击属性-> Java BuildPath选择Library并添加android-support.jar。

转到项目->属性->Java构建路径,然后选择订单和导出选项卡。将android-support .jar库设置为选中,并将其置于列表顶部。清理和重建,它适用于大多数情况

将活动添加到与包的根名称空间不同的名称空间也可能导致此错误。

例如,如果com.example.myapp是包的根名称空间,那么您可以将一个活动添加到com.example.myapp.activities名称空间。

这将产生“R不能被解决”的错误。

要修复导入,活动中默认命名空间中的R应该是:

import com.example.myapp.R;

我将AndroidManifest.xml文件中的android:versionName从1.0更改为1.1。这重新生成了我的R.java文件,我很高兴。我希望这能帮助到一些人。

从这里提供的许多答案来看,帮助我的是在java构建路径的“order and Export”中更改顺序。

1.单击您的项目->项目属性

2.Java构建路径

3.订购及出口

将Build类路径的顺序更改为

1 .(软件包名称)/ src

2.Android(版本号)

3.Android依赖关系

4 .(软件包名称)/ gen