【问题标题】:Can't Read Content from R.Java in Android Application无法从 Android 应用程序中的 R.Java 读取内容
【发布时间】:2012-11-06 18:44:37
【问题描述】:

我正在自学如何在 Eclipse 中编写一个 android 应用程序。我在 R.Java 中有以下内容

 public static final class menu {
    public static final int activity_marblez_main=0x7f060000;
}

但是,在我的主 java 文件中,我似乎无法“看到”我在 R.java 中的对象。

package com.example.marblez;

import android.R;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;

public class MarblezMain extends Activity {

//Custom View for Marble View
private MarblezView mView;

//ID for the menu exit option 
private final int ID_MENU_EXIT = 1; 

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    mView = new MarblezView(getApplicationContext(), this);
    mView.setFocusable(true);

    setContentView(R.layout.activity_marblez_main);
}

我的问题是当我写这行时:

 setContentView(R.layout.activity_marblez_main);

它仍然看不到activity_marblez_main。我已经导入了 R.Java 文件。我已经删除它并重新生成它,但它不能很好“activity_marblez_main”。为什么?具体错误是:

"activity_marble_main cannot be resolved or is not a field" 

就此而言,我也无法从 R.java 文件中读取任何其他内容,例如字符串或任何内容。有谁知道可能导致此错误的原因。我在扯我的头发。我知道计算机不会说谎,但我看到了它应该在的所有东西,就像程序不会读取它一样?

【问题讨论】:

    标签: java android import r.java-file


    【解决方案1】:

    您的 R.java 文件是由 eclipse Android 开发工具生成的,您永远不需要使用它。

    当你导入它时,它应该是你的包名。所以对我来说是import com.jenxsol.application.R

    您当前正在导入只会返回 android 资源的 android.R。

    【讨论】:

      【解决方案2】:

      您正在导入 androids R 文件,而不是您的。修复您的导入。

      【讨论】:

        【解决方案3】:

        删除这一行

        import android.R;
        

        因为您正在导入平台的 R 文件,而不是您的,所以应该是:

         import com.example.marblez.R;
        

        (但你也可以没有,这没关系)。您可以通过按 CTRL-SHIFT-O(字母“o”)在 Eclipse 中重新生成导入。只要确保您没有导入平台 R。

        【讨论】:

        • 谢谢。我完全取出了导入文件,它起作用了。我非常感谢您的帮助!谢谢。
        【解决方案4】:

        第一件事是:创建布局activity_marble_main(如果你没有创建它),如果是,它将自动添加到你的(auto generatedR.java)。

        第二件事,当您的布局添加到您的R.java 时,它将位于名为layout 的静态类中(在您的情况下,您有static class menu

        毕竟,删除android.R的导入(如果有导入)

        然后在尝试通过 id 查找布局时,导入您的类 R (com.yourpackage.R)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-09-03
          • 1970-01-01
          • 2021-12-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-02-18
          • 2013-06-20
          相关资源
          最近更新 更多