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


当前回答

确保所有资源文件都没有大写扩展名。我发现我保存了一些带有大写扩展名。png的图像。我把它改成。png,一切都恢复正常了。

其他回答

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

确保在android中的res/drawable文件夹中没有错误。在命名此文件夹中的图像时,不要给出数字和大写字母。

它为我工作与右击>Android工具>修复项目属性和重新启动Eclipse后的一些时间。

有时,手动创建R.java文件会有帮助,只是简单的空R.java。

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

同样的事情也发生在我身上,我花了一天时间来解决这个问题。这真的是一个愚蠢的错误。我只是剪一下我的经验,希望对您有所帮助。首先,当你输入这个setContentView(r.b ayout.activity_to_do_list);听到你的起点R.l,那么eclipse应该为你打开一个这样的建议

你导入第二个不是layout-android。R。第二个是在项目中创建的,其中com.example.gridtest是项目包的名称。然后在代码中集中导入的部分

好的,看这个导入com.example。gridtest。r;这很重要。如果你已经导入了这个android。R然后移除它。谢谢,希望有用。(你不需要总是这样做,但如果你遇到这种问题,然后这样做,希望它会有所帮助)