R.layout.main无法解析

时间:2010-10-27 15:54:52

标签: eclipse android

在win XP上使用Eclipse。我之前创建了一个应用程序或2,但我正在处理'真实'版本并得到上述错误。

我正在创建1.5版本的funnies,所以已经开始了2.1的新项目。

package xxx.guest;

import android.R;
import android.app.Activity;
import android.content.Context;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;

public class briefme extends Activity {

 private String strURL;
           ........
           ........ 

 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main ); 

项目如下(注意我出于保密原因删除了一些名称!)

任何想法出了什么问题?

谢谢,

马丁。

Project screenshot here

8 个答案:

答案 0 :(得分:60)

我会尝试刷新,如果不起作用,请关闭并打开项目。

如果这两个失败,删除并重新创建R(它应该自动生成)(复制它只是为了安全起见)。

我已经发生了几次这种情况,这是我通常做的三件事来解决错误。

编辑:还尝试更改导入:

import android.R;

为:

import your.package.R;

答案 1 :(得分:3)

在我的情况下,这是因为它们是一个布局资源,文件名中包含大写字母。由于错误而未编译资源,因此缺少R类。

答案 2 :(得分:2)

如上所述,只需更改导入“import android.R;”与您的应用相关的一个例如“import your.package.name.R;”应该在这里做的伎俩。

答案 3 :(得分:1)

您还可以检查/ platform-tools文件夹中的adb程序是否具有在系统中运行的权限。如果没有,则不会生成项目的R.java。

答案 4 :(得分:0)

我的两分钱。

在我的情况下,我使用了另一个同名 R 的变量,导致编译错误。在引导用户输入确切的错误消息方面,Eclipse可能会变得更好。

答案 5 :(得分:0)

R cannot be resolved - Android error可能重复。

在那个帖子中,我们有一个很好的答案。

参考http://source.android.com/source/using-eclipse.html,我们得到以下代码段:

  

注意:Eclipse有时喜欢在使用资源的文件顶部添加“import android.R”语句,尤其是当您要求Eclipse对其进行排序或管理时。这会导致你的品牌破产。注意这些错误的import语句并删除它们。

所以答案是删除而不是重命名import android.R;

原因是,由于您共享包,因此your.package.R可见。 import android.R;掩盖了这一点,因此删除它而不是将其更改为冗余更为清晰。

答案 6 :(得分:0)

如果您的64位Linux平台没有ia32库,那么也可能出现此问题。我花了很长时间才把它固定下来,发现问题与无法执行32位代码没有明显联系。

答案 7 :(得分:0)

在我的情况下(看其他教程)你必须改变:

setContentView(R.layout.main ); 

要:

setContentView(R.layout.activity_main);