0

我正在关注 android 教程,但无法让 hello world 正常工作。我遇到了与this SO question中描述的相同的问题,我尝试使用this SO answer作为补救措施。然而它没有用。

我仍然得到activity_main cannot be resolved(第 12 行)和main cannot be resolved(第 19 行)。

我只是开始了一个新的android项目,我MainActivity.java看起来像这样(注意我使用android.R. ...

package com.arandomtesteinstein.testandroid;

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

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(android.R.layout.activity_main); /* <----- Error in line 12 */
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(android.R.menu.main, menu); /* <----- Error in line 19 */
        return true;
    }

}

我究竟做错了什么?

编辑:

好的,只是为了澄清一下,我完全按照(据我所知)官方 android 教程。当我点击“运行”时,eclipse 会抛出上述错误。然后我找到了这个 SO 答案(上面的第二个链接)并尝试遵循它,但是它仍然没有用。严格来说,我不是在开发或做任何聪明的事情或转储,我只是试图遵循教程的最初步骤

4

4 回答 4

0

前缀android.你正在寻找一个名为 activity_main 在 android 资源中的布局,它可能不存在。改变

 setContentView(android.R.layout.activity_main);

 setContentView(R.layout.activity_main);
于 2013-11-01T11:21:50.497 回答
0

我曾经遇到过类似的问题,结果是我不小心删除了

public static final class layout {
        public static final int activity_main=0x7f030000;
    }
    public static final class menu {
        public static final int main=0x7f070000;
    }

从 R.java 文件。

于 2013-11-01T11:30:07.603 回答
0

是的,我也遇到了同样的问题,当时我遇到了这个问题,因为 gen 文件夹(R.java)中没有文件。清理项目以在该文件夹中生成这些文件。然后按照教程中的说明运行您的项目。它可能对你有用。

于 2013-11-01T11:26:43.543 回答
0

import android.R;从您的活动的导入中删除。R并从您生成的包中导入。

或使用;

setContentView(<your_package_name_at_manifest>.R.layout.activity_main);

代替

setContentView(android.R.layout.activity_main);

编辑:您必须使用您的<your_package_name_at_manifest>.R类来引用您的资源(通过导入或直接引用)。如果这个类在 gen 源文件夹下不可见,这意味着你没有成功构建你的项目。可能的原因是项目的 res 文件夹下的错误。

于 2013-11-01T11:36:08.177 回答