【问题标题】:How do I "Open the MainActivity class and add the corresponding method:"如何“打开 MainActivity 类并添加相应的方法:”
【发布时间】:2012-07-27 17:22:45
【问题描述】:

我正在尝试遵循 Android 开发者网站上的构建您的第一个应用程序,但我坚持学习课程:Starting Another Activity

我下载并安装了 Eclipse SDK 和 ADT 插件,这就是我正在使用的。

我在上面链接的页面上的步骤上挂断了,上面写着:

打开MainActivity类,添加对应方法:

/** Called when the user clicks the Send button */
public void sendMessage(View view) {
    // Do something in response to button
}

提示:在 Eclipse 中,按 Ctrl + Shift + O 导入缺失的类(Mac 上为 Cmd + Shift + O)。

我不知道我应该打开什么文件。我正在使用 Windows,所以我尝试按 CTRL + Shift + O 并没有发生任何事情。我尝试查找 *.class 文件但找不到。我看到的唯一类文件是 classes.dex,我认为不是。有人可以指出我正确的方向吗?

【问题讨论】:

  • 那么你到底困在哪里?您应该将该代码添加到您的活动类中。
  • 我不知道活动课是什么或在哪里。活动课具体在哪里?我已经搜索了有关此问题的帮助,但找不到答案。正如我所说,我今天才开始。
  • 我在寻找扩展名为 .class 的文件吗?如果是这样,我没有看到。
  • 这不是问题。我建议您从这些视频开始tutorials。当我开始的时候,他们真的帮助了我。祝你好运。
  • 我想我找到了答案。它位于 /SRC/ProjectName/MainActivity.java

标签: android class android-activity main


【解决方案1】:
  1. 如果您检查了左侧包资源管理器中 /src/ 下的每个文件夹/包,但您确定没有,这就是帮助我在没有开始的情况下继续教程的原因结束:

  2. 我也被困在那里,因为唯一的 MainActivity.java 文件位于 /gen/... 而不是 /src/...,但我通过删除现有的文件来修复它在 /src/com.example.whatever/ 创建一个新的。新建 > 类,命名 MainActivity 并粘贴以下代码:

    package com.example.androidtest;
    
    import android.os.Bundle;
    import android.app.Activity;
    import android.view.Menu;    
    
    public class MainActivity extends Activity {    
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.main, menu);
            return true;
        }
    
    }    
    

    ..现在你有了 MainActivity.java,可以继续了! (您可以创建一个新的 Android 项目并将 MainActivity 复制并粘贴到您现有的项目中。您只需要调整)

  3. 万一这没有帮助,可能是,你一开始就没有 MainActivity 类。要解决此问题,请单击 New > Android > Android Activity,选择 Blank Activity 并在下一个面板中输入 MainActivity 作为名称。我先尝试了这个,但出现错误,布局名称“activity_main”已经存在。

祝你好运!

【讨论】:

    【解决方案2】:

    我也有这个问题,花了一个多小时寻找补救措施。我在此找到的:

    转到左侧导航栏并转到/src/com.example/MainActivity.java

    双击 MainActivity.Java

    文件在主窗口中打开,好的,在最后一个“}”之前,插入你的代码

    出现黄线(表示某种错误!)

    要解决此问题,请将鼠标悬停在黄线上,您将看到一个弹出窗口。点击包含“导入视图”的选项。

    您现在可以继续学习本教程...

    编辑:错字

    【讨论】:

    • 太棒了。我正在寻找的完美答案。
    【解决方案3】:

    也卡在那里,但这个答案有很大帮助。不要忘记添加“import android.view.View;”否则,您将收到“视图无法解析为类型”的消息。

    【讨论】:

      【解决方案4】:

      在 Eclipse 屏幕左侧包资源管理器最顶部附近的 MyFirstApp 下的文件标题 src 下查看。然后打开com.example.MyFirstApp 文件夹,它就在那里。打开它并开始编辑。

      【讨论】:

        【解决方案5】:

        刚刚遇到同样的问题:

        在包资源管理器中,该文件位于 src\com.example.my.first.app\MainActivity.java 下

        com.example.my.first.app 就是我所得到的。如果您以不同的方式命名该项目,它应该会反映这一点。

        希望这会有所帮助!

        【讨论】:

          【解决方案6】:

          在按钮 onclick() 上写这个

          Intent myIntent = new Intent(CurrentActivity.this, NextActivity.class);
          CurrentActivity.this.startActivity(myIntent);
          

          要传递信息,只需使用

          myIntent.putExtra("key", value);
          

          可以在另一边通过

          找回
          @Override
          protected void onCreate(Bundle savedInstanceState) {
          Intent intent = getIntent();
          String value = intent.getStringExtra("key");
          

          不要忘记在 AndroidManifest.xml 中添加您的新活动:

          <activity android:label="@string/app_name" android:name="NextActivity"/>
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2016-07-13
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多